大佬教程收集整理的这篇文章主要介绍了c – 向量动态内存分配的私有成员向量,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
class theclass{ public: void setdim(void); private: std::vector < std::vector <int> > thetable; }
我想用函数setdim()设置thetable的维度.
void theclass::setdim(void){ this->thetable.assign(1000,std::vector <int> (2000)); }
编译这个程序没问题,但是当我执行它时,我遇到了分段错误.
对我来说奇怪的是,这段代码(见下)正是我想要的,除了它不使用我的类的私有成员变量:
std::vector < std::vector < int > > thetable; thetable.assign(1000,std::vector <int> (2000));
顺便说一句,如果thetable是一维向量,我也没有问题.在课堂里 :
std::vector < int > thetable;
如果在setdim中:
this->thetable.assign(1000,2);
所以我的问题是:为什么在thetable和this-> 2D矢量的表格之间存在“分配”这样的差异?我该怎么办才能做我想做的事?
谢谢您的帮助,
最好的祝福,
– @H_618_38@若弗鲁瓦
以上是大佬教程为你收集整理的c – 向量动态内存分配的私有成员向量全部内容,希望文章能够帮你解决c – 向量动态内存分配的私有成员向量所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。