关于C#:内存泄漏测试

Memory leaks testing

我正在使用Instruments对我们的产品进行内存泄漏测试。

检测到

std:stringstd::auto_ptr对象泄漏。据我所知,这两种对象都会释放自己。我想知道它们是否真的泄漏了,或者只是因为我停止录制太早并且Instruments没检测到它们已被释放?

仪器在这类物体上是否准确?


您可以泄漏std::string对象,但这并不难:

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

以相同的方式可以泄漏auto_ptr。 std :: string将释放它包含的动态分配的字符串数组,但不会release itself