有人可以解释我这个错误(可复制):
int foo();
int main() {
foo();
return 1;
}
int foo() {
std::vector<double> test;
int c=0;
c++;
}
据我所知,此代码不应出现内存泄漏。在调试模式下执行它,并在foo()
的第一行放置一个断点时,内存会增加,直到我不停止该过程(在10秒内它达到2.5 GB)。
我正在使用G++
和Qt-creator
。有什么我不了解std::vector
或者我刚刚发现了一个错误?
PS:这是C ++ 98