首页 > 解决方案 > std::vector 的 C++ 类成员初始化

问题描述

我有这样的课

class A
{
    std::vector<double[2]> v;
}

我想写一个这样的构造函数

A::A()
    : v(10, {0.0, 0.0})
{
}

这(功能上)与此相同

v.reserve(10);
for(i ...)
{
    double t[2] = {0.0, 0.0};
    v[i][0] = t[0];
    v[i][1] = t[1];
}

但是,我尝试使用成员初始化列表语法编写构造函数会产生编译器错误。(一些涉及很多 STL 的冗长复杂的事情,我不完全理解。)

std::vector<double[2]>是否使用我尝试使用的语法初始化可能?

标签: c++

解决方案


推荐阅读