全部,任何人都可以告訴我一個好方法或工具來檢測Visual Studio中的內存泄漏這些代碼?我已經測試了crt調試,但是當我中止調試過程時(shift + f5),內存泄漏報告不會出現在調試窗口中。如何找到一種方法來檢測此代碼中的內存泄漏?
void fun1()
{
int * pInt = new int;
return;
}
void Execute(void)
{
while(true)
{
cout<<"I will sleep for 1 second..."<<endl;
::Sleep(1000);
fun1();
}
return;
}
int main()
{
Execute();
return 0;
}
任何人都知道如何找到上述代碼的內存? 順便說一句,如果我選擇使用shared_ptr,內存泄漏不會再發生,對吧?
我在等待答案,告訴你'delete pInt;'因爲他們還沒有讀完整個問題...... – 2012-04-24 15:18:14
只有一個'new'語句,所以內存泄漏不應該很難找到:P – orlp 2012-04-24 15:19:30
你是如何「中止流程」的?在正常的進程關閉期間CRT很可能會執行檢查 - 如果將while(true)改爲有限循環並讓進程退出,會發生什麼情況? – 2012-04-24 15:21:42