VC++默认栈大小只有1M bytes,若想修改栈大小,对于VC++,
你可以在代码中用 #pragma comment(linker, "/STACK:字节大小")
也可以在.def文件用 STACKSIZE statement
也可以在link命令中用 /STACK:reserve[,commit]
甚至只有exe文件,你也可以用VC自带的工具editbin.exe进行修改。
但问题是你是不是一定要在栈中分配大数组?
可以分配在堆中,动态长度的数组,std::vector很合适;定长的,std::unique_ptr<foo[]> p { new foo[3] }; 更好一些。 ------ 推荐这种方法
假如你就想在栈中分配数组,且懒得改任何东西,你还可以用static局部变量;如果你觉得static局部变量在多线程同时调用时会冲突,你还可以用static thread_local。 ------ 不推荐这种方法