【发布时间】:2019-08-07 12:19:03
【问题描述】:
class A {
public:
int value;
A(int value){
this->value = value;
}
};
class Relation{
vector<A> items;
Relation(vector<A> items){
this->items = items;
}
}
int main(){
vector<A> items;
items.push_back(A(1));
Relation r1(items);
}
如何将新对象的向量传递给另一个对象的构造函数?在第 13 行,我收到一个错误“没有匹配函数调用 'A::A()'”
【问题讨论】:
-
第 13 行是哪一行?
-
我没有收到那个错误。相反,我得到
Relation::Relation构造函数是私有的错误,这很容易修复。 -
将Relation构造函数公开编译时没有错误
-
显示的代码中缺少分号。即使忽略缺少的包含文件和缺少的命名空间声明,这也证明显示的代码不是真正的代码,在这里尝试猜测问题是什么,对每个人来说都是浪费时间。
标签: c++ object vector constructor