当我在下面的程序上运行valgrind时,它报告内存泄漏。你能解释一下原因吗?使用C++字符串时的内存泄漏
#include <string>
#include <iostream>
using namespace std;
int main()
{
char * arr = (char *) ::operator new(sizeof(char));
string s = arr;
return 0;
}
- 中到底发生就行字符串s = ARR什么?它是否制作了arr的副本?
你不自由arr。 – Aneri 2013-03-13 16:00:44
你为什么要写这个代码? @Aneri:你是海盗吗? ;-) – stefan 2013-03-13 16:02:04
'std :: string'不会奇迹般地释放你的数组 – 2013-03-13 16:02:10