c++ new 和 delete的问题,高人进

来源:百度知道 编辑:UC知道 时间:2024/06/16 18:26:02
#include "stdafx.h"
#include "iostream"
using namespace std;

double *var;
void fun()
{
var = new double[100];
}
int main()
{

int a;
while(cin>>a)//不停调用fun()
fun();

return 0;
}

//)//不停调用fun() 最后系统会崩溃?...
我看任务管理器 感觉内存也没增加多少啊

这样写是没用的,再大也没用,大了只会让你的程序不响应,程序死掉。。。。。
楼主说的情况只能在16位或更低的机上看到。。。
因为现在的nt核心的操作系统都采用了虚拟内存技术。。

如果真的内存没什么改变,就是你的任务管理其有问题了!

你应该看进程里,相关项的内存占用。

用你的手敲我看崩溃不了,1W下才8M内存,累死人 ,估计输错了

一般操作系统会给每个进程分配大概4GB的逻辑地址空间

即便你的程序那样new很多,也不一定能看到效果,如果

真要看效果。可以试试我下面的程序。


#include <iostream>
using namespace std;

int main()
{
for(int i=0;i<1000;i++)
{
new int[200099999];
}
getchar();
return 0;
}

如果效果不明显 可以试着把数据改大些!