关于栈溢出?解决方法

关于栈溢出?

check.cpp
C/C++ code

#include "check.h"
void main()
{
   Object ob;
   ob.done;
}



check.h
C/C++ code

class Object
{
public:
void done();
protected:
int a[1500][1500];
};

void Object::done()
{
for (int i=1;i<=1500;i++)
for (int j=1;j<=1500;j++)
{
a[i-1][j-1]=i+j;
}





运行报错,栈溢出,要处理大数据量的东西怎么办呢?请大家帮忙看看怎么解决!
程序被我简化了,主要问题应该是出在这里的!
静候佳音

------解决方案--------------------
用堆。
C/C++ code
class Object
{
public:
Object();
void done();
protected:
int **a;
};

Object::Object(){
a = new int*[1500];
for (int i=1;i<=1500;i++)
a[i-1] = new int[1500];

}