假设我有以下代码:
struct obj{
int v;
obj(int i = 1){
v = i;
}
};
int main(){
vector<obj> v1(10); // (1)
vector<obj> v2(15); // (2)
}
根据以上内容:
Number (1) 创建一个包含 10 个 obj
实例的 vector 默认 v=1
.
数字 (2) 如何将 15 作为参数发送到 obj
所以 v=15
???
我在网上搜索了这个 article 在这个网站上,但它似乎是关于更高级的东西,作为一个新手,我没有得到它。
最佳答案
vector<obj> v1(10); // creates a vector of 10 obj, each initialized
// with the default value 1
vector<obj> v2(10, 15); // creates a vector of 10 obj, each initialized
// with the value 15
如果你想传递多个参数给构造函数:
vector<obj> v3(10, obj(15, x, y)); // creates a vector of 10 obj, each
// initialized with (15, x, y)
您当然必须提供一个构造函数,该构造函数需要三个参数才能正常工作。
关于c++ - 对象 vector - 如何向构造函数发送参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49826456/