定义了很多大型矩阵,程序运行时报内存出错,怎么办?
定义的类成员函数,要循环调用。
函数的成员变量是多个200×200的矩阵。
什么问题?怎么解决?3Q!
问题点数:0、回复次数:4Top
1 楼Kshape(C/C++初学者~~~~)回复于 2005-04-04 13:32:28 得分 0
当然会报内存错啦. 大矩阵对内存的占用是相当可观的. int a[200][200] 的矩阵占的空间可是 200 * 200 * 4Bytes, 大约是156KB. 直接把这么大一块矩阵放在栈上, 很容易就栈溢出, 报内存错也就不足为奇了.最好只在函数里面声明一个指向这个矩阵的指针, 把这个矩阵分配在堆上.Top
2 楼playmud((猪头流氓)(抵制日货)(热烈庆祝火箭输球))回复于 2005-04-04 13:36:19 得分 0
路过Top
3 楼quanxin33(可下人间)回复于 2005-04-04 15:20:39 得分 0
哦,那就是说要用new在自由存储区定义矩阵,
然后在函数里定义指针进行操作?Top
4 楼pcboyxhy(-273.15℃)回复于 2005-04-04 15:22:38 得分 0
栈里数据一般不超过64KTop




