如何在c ++中修复动态数组中的“Out of Memory”

时间:2012-04-02 03:06:57

标签: c++ arrays dynamic

我正在尝试用c ++构建一个动态数组:

int **matrix = 0;    
matrix = new int * [dim];
for (int i = 0; i < dim; i++)
    matrix[i] = new int[dim];

当“昏暗”从90000超过s时,程序崩溃并让我内存不足(超过2 GB的RAM)

任何想法如何修复它?还有其他解决方案吗?

2 个答案:

答案 0 :(得分:3)

要分配超过2 GB的内存,您需要为64位操作系统编译程序并运行它。

答案 1 :(得分:1)

您可以尝试使用/ 3GB开关,它可以在消费者(即非服务器)版本的32位窗口上为您提供额外的1GB。

Details of /3GB switch