我问我的朋友,在被这个帖子吸引之后,他是否可以在不使用循环或编码的情况下从1到1000进行打印:
他用这个程序回答.
#include <iostream>
using namespace std;
static int n = 1;
class f {
public:
f() {
cout << n++ << endl;
}
};
int main(int argc, char *argv[]) {
f n [1000];
}
Run Code Online (Sandbox Code Playgroud)
运行程序输出正常.但是当我在netbeans上关闭程序时,它似乎仍在运行并消耗内存.该程序是否导致内存泄漏?有人可以解释这个小程序是如何工作的吗?
但是当我在netbeans上关闭程序时,它似乎仍在运行并消耗内存
当您关闭程序或它终止时,无论它是否有内存泄漏,内存都将被释放.我很确定你没有正确终止它.
该程序是否导致内存泄漏?
不,如果您不使用new或malloc(直接或间接),您不能有内存泄漏
有人可以解释这个小程序是如何工作的吗?
f n [1000];尝试创建1000个f对象的向量.初始化它们时,将调用构造函数,打印n并递增它.
| 归档时间: |
|
| 查看次数: |
258 次 |
| 最近记录: |