0

それらはメモリリークになりますか、それともC ++はそれらを狙ったポインタがないことに気づき、そのメモリを解放しますか? それらを削除する必要がある場合は、削除コマンドを使用するだけですよね?

4

2 に答える 2

2

C ++は、それらを目指しているポインターがないことを認識し、そのメモリを解放しますか?

C++ はそのようなことを「認識」しません。組み込みのガベージ コレクタはありません。

でメモリを割り当てnew、対応する への呼び出しでメモリを解放しないとdelete、メモリ リークが発生します。

于 2013-04-04T03:04:25.187 に答える
0

Cody は正しいです。C++ にはガベージ コレクターがないため、オブジェクトへのポインターが失われるとメモリ リークが発生します。

C++ には、これに対処するための標準ライブラリが含まれています。オブジェクトがそれを指していstd::shared_ptrない場合、 はそのオブジェクトを自動的に削除します。std::shared_ptr

于 2013-04-04T03:16:34.247 に答える