c++ - 如何声明一个数组然后在另一行赋值

标签 c++ arrays

class c{};

c *ar[2];

ar = {new c, new c}; //error

“数组类型不可赋值” 如何在声明后分配它,我想这样做是因为类正在使用该变量所以我只想声明它,创建一个类然后分配值,我不能在类之前分配因为它不能创建一个 new c 而不先定义类。

最佳答案

使用标准库算法生成:

#include <algorithm>
#include <iterator>

class c{};
c* ar[2];
std::generate(std::begin(ar), std::end(ar), [] { return new c; });

关于c++ - 如何声明一个数组然后在另一行赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45214397/

相关文章:

c++ - 我想了解 C++ 中的参数解包

c++ - 可搜索环形缓冲区

php - 多维键/值数组写入 MySQL 表

javascript - 如何将json对象映射到数组

javascript - 尝试结合使用 jQuery 的 window.open 函数和 for 循环来迭代数组时出现问题

c# - 如何通过索引总结 List<int[]> 或锯齿状数组的每个数组?

php - 如何在 PHP 中合并多维数组以便能够将它们输出在一起

c++ - 模板化重载运算符解析,无隐式转换

c++ - 用于组合类的 Boost Karma 生成器

c++ - 三角形三角形重叠(但不是边缘)