我想使用类中的构造函数创建二维和三维向量。但是,我不知道如何使用多维向量。
一维作品:
class One{
public:
vector < float > myvector;
One(int length) : myvector(length){}
};
二维不起作用:
class Two{
public:
vector < vector < float > > myvector;
Two(int length, int width) : myvector(length)(width) {}
};
三维也不起作用:
class Three{
public:
vector < vector < vector < float > > > myvector;
Three(int length, int width, int height) : myvector(length)(width)(height) {}
};
以下答案适用于二维向量。我希望以下代码为三维,但似乎是错误的
class Three{
public:
vector < vector < vector < float > > > myvector;
Three(int length, int width, int height) : myvector(length, vector<float>(width, vector<float>(height))) {}
};
答案 0 :(得分:13)
对于二维情况,它应该是:
Two(int length, int width) : myvector(length, std::vector<float>(width)) {}
我会让你自己弄清楚第三种情况。