我有一个使用VS2010编写的MFC VC++应用程序。
当我尝试使用malloc分配大小为“185000000”的double数组时:
- 使用malloc:它返回NULL
- 使用new运算符:它抛出CMemoryException异常
但是当我像这样编写独立的Win32控制台应用程序:
double *ptr = NULL;
ptr = new double[185000000];
这个程序工作良好,ProcessExplorer应用程序显示已分配大约1411MB的内存。
我的MFC应用程序具有GUI,并添加了许多库以与Agilent仪表和NI-6255仪表电压测量一起使用。