首页 > 解决方案 > 在结构中设置数组的值

问题描述

我想为结构中的向量/数组赋值。类似于以下的东西。但是,以下代码会出错,并且无法编译。

struct Params
{

    float a = 1.132;
    vector<float> v(100);

    for (int n = 0; n < 100; ++n)
    {
        v[n] = n*a;
    }
};

如何填写v我想填写的值并保存v在结构中?谢谢。

标签: c++arraysvectorstruct

解决方案


将代码放入这样的构造函数中:

Params() {
    v.resize(100);
    for (int n = 0; n < 100; ++n)
    {
        v[n] = n * a;
    }
}

这样,当您制作 a 时Params,它已经使用您的值进行了初始化:

Params a;
std::cout << a.v[10] << std::endl;

例如,这将打印11.32


推荐阅读