我想为结构中的 vector/数组赋值。像下面这样的东西。但是,以下代码会出错,无法编译。
struct Params
{
float a = 1.132;
vector<float> v(100);
for (int n = 0; n < 100; ++n)
{
v[n] = n*a;
}
};
如何用我想要填充的值填充 v
,并将 v
保存在结构中?谢谢。
最佳答案
像这样将代码放入构造器中:
Params() {
v.resize(100);
for (int n = 0; n < 100; ++n)
{
v[n] = n * a;
}
}
这样,当你制作一个Params
时,它已经用你的值初始化了:
Params a;
std::cout << a.v[10] << std::endl;
例如,这将打印 11.32
。
关于c++ - 在结构中设置数组的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55103468/