0
私は、新しい式new (std::nothrow)
でファイルとリークが発生している行を取得しようとしています。私は新しい表現 `new(std :: nothrow)`にMSリークディテクタを使うことはできないようです。あれは正しいですか?
以下のコードのコメント付きの新しい式はコンパイルされません。
#include <iostream>
int main()
{
#ifdef _DEBUG
int* p = new (_NORMAL_BLOCK, __FILE__, __LINE__) int(10);
// int* q = new (std::nothrow, _NORMAL_BLOCK, __FILE__, __LINE__) int(10);
#else
int* p = new int(10);
int* q = new int(10);
#endif
_CrtDumpMemoryLeaks();
}
私はまた<iostream>
が<crtdbg.h>
が含まれない場所を知って興味があります。私はそれを見つけることができませんでした。もちろん、どこかにそこにいなければなりません。
それは答えと思われます。これは細かいことだと思いますが、 ''ファイルが ''に含まれていることは間違いありませんか? 'が' '' に含まれる場合、私はついに見つけ –
Belloc
: – Belloc
私はついに見つけ 'が' ''に含まれる場合: 'のiostream> isstream> osstream>イオス> xlocnum>ストリームバッファ> xiosbase> xlocale> stdexcept提供> XSTRING > xmemory> xutility> crtdbg'となります。 –
Belloc