1

Instrumentsを使用して、製品のメモリリークテストを行っています。

std:stringまたはstd::auto_ptr物体に漏れが検出されました。私が知っているように、これらの 2 種類のオブジェクトは自分自身を解放します。本当にリークなのか、それとも私が録音を止めるのが早すぎたために、Instruments がそれらがリリースされたことを検出しなかっただけなのだろうか?

インスツルメンツは、これらの種類のオブジェクトで正確ですか?

4

1 に答える 1

1

オブジェクトをリークすることができますがstd::string、それはそれほど難しくありません:

int main(){
  std::string* s = new std::string();
  return 0;
}

をリークするのと同じ方法ですauto_ptr。std::string は、含まれている動的に割り当てられた文字列配列を解放しますが、解放しませんrelease itself

于 2013-03-21T10:48:27.617 に答える