[英]Struct memory limit
我对C ++中的struct有疑问。 其实我的代码是这样的
struct SegmentTree {
int segmentTree[2500000];
some functions...
}
当我编译它时,它立即给我带来了分段错误,但是当我尝试对类进行相同的操作时,一切工作都很好。 所以,我的问题是:在结构中可以使用的变量数量是否有限?否则,这是什么问题?
这样声明的数组将在堆栈上分配(与函数的局部变量相同)。 静态数组中元素数量的限制由您的堆栈大小(可以使用编译器选项修改)定义。 考虑使用动态分配的数组(甚至更好的std::vector
)来利用堆。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.