要创建一个一开始没有特定维度的类Vector,请在类中创建一个方法,允许向向量添加维度



我知道如何创建一个有特定维度的类Vector,例如,如果它是3D,我会把它放在私有的3个双x、y和z中。然而,我想创建一个名为未知维度向量的类,方法是:increat-允许向向量添加维度,并向这个新维度添加值。print-打印矢量compare-将两个不同的矢量放在一起进行比较。

因此,我的方法如下:我会私下创建一个向量:

class Vector {
private: vector<double>vect; //
public: void print() const; 
        bool compare(Vector const& v) const; 
        vector<double> increase(double& a); 
};
void Vector::print()const{ 
for(size_t i(0); i < vect.size(); ++i) { cout << i << endl; }}
bool Vector::compare(Vector const& v) const{ 
for(size_t i(0); i < v.size(); ++i){
    for(size_t j(0); j < vect.size(); ++j){
if(v[i] == vect[j]) { return true; }
vector<double> Vector::increase(double& a){ 
vect = vect.push_back(a); 
return vect; }

这是错误的吗?或者这里的错误在哪里?你能告诉我我能做些什么来改善这一点吗?或者如果我出了问题。

感谢

一般来说,如果您真的需要在运行时更改Vector的维度,我认为以这种方式使用std::vector没有任何问题。

但是您的代码充满了编译错误和逻辑错误。特别是你的compare功能。所以我想你只是想让我们把它当作伪代码,并对总体想法发表评论。

相关内容

  • 没有找到相关文章

最新更新