我们试图使用2D向量,因为我们需要一个将动态增长的2D数组。在类中声明动态2D向量
我们尝试了这一点: 在类声明:
vector<vector<double> > table;
但随后表似乎没有进行分配。我们尝试访问会员时遇到段错误。
然后我们尝试这样做:
类声明:
vector<vector<double> >* table;
构造:
table = new vector<vector<double> >;
但现在我们之前我们访问的方式(用[] [])没有按没有工作。
我们试图用这个虚拟类:
class myClass {
public:
myClass();
~myClass();
vector<vector<double> > t;
};
myClass::myClass()
{
t = vector<vector<double> > (10, vector<double>(10));
}
但它不是免费的正确,我们得到了核心转储。另外,当我们试图增长数组时,我们会用expclitly构造每一个新行。
例:
t[50] = vector<double>(5);
t[50][10] = 10;
如果我们没有像这样做,我们会得到一个segfault