我想创建一个具有数组和数组大小的构造函数,以便可以使用以下命令调用该对象:Multime m1 = Multime({1, 2, 3}, 3);还是应该改用 std::vector

class Multime
{
private:
    int elemente[100];
    int size;
public:
    Multime(){}
    Multime(int el[50], int s){
        this -> size = s;
        for(int i = 0; i < this -> size; i++)
            this -> elemente[i] = el[i];
    }
};

int main()
{
    Multime m1 = Multime({1, 2, 3}, 3);
    return 0;
}

而且我得到没有匹配的构造函数来初始化'Multime'

最佳答案



好主意啊。

class Multime
{
private:
    std::vector<int> elemente;
public:
    Multime() {}
    Multime(std::vector<int> el) : elemente(std::move(el)) {}
};

int main()
{
    Multime m1 = Multime({ 1, 2, 3 });
    return 0;
}

10-08 13:01