【问题标题】:Populate a 3D vector with class objects使用类对象填充 3D 矢量
【发布时间】:2019-02-04 22:07:20
【问题描述】:

我有一个名为 Cube 的类对象:

class Cube{
  public:    
    Cube();
};

Cube::Cube(){}

我这样创建 Cube 对象的 3D 网格:

 vector<vector<vector<Cube>>> grid;

现在我想用一定数量的 Cube 对象填充它。本质上,我想做和创建 3D 数组一样的事情:

Cube grid[10][10][10]

这在 C++ 中可行吗?

【问题讨论】:

标签: c++ class vector


【解决方案1】:

现在,您正在调用std::vector 默认构造函数,但是还有一个构造函数接受大小和项目值。完整列表见the cppreference page

所以你实际上可以这样做:

vector<vector<vector<Cube>>> grid(10, vector<vector<Cube>>(10, vector<Cube>(10, Cube());

这将为您提供一个 10x10x10 的 3D 矢量,其中填充有Cube()(默认立方体)对象。

【讨论】:

  • 太棒了。非常感谢。
猜你喜欢
  • 2012-10-31
  • 2020-06-23
  • 2022-09-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-02-03
  • 1970-01-01
相关资源
最近更新 更多