我需要将 C++ 中的 int[] 数组从零填充到变量定义的数字,但 ISO C++ 禁止可变长度数组...
如何轻松填充数组?我需要分配/释放内存吗?
int possibilities[SIZE];
unsigned int i = 0;
for (i = 0; i < SIZE; i++) {
possibilities[i] = i;
}
顺便提一句。如果你会问 - 是的,我需要完全标准的 int[] 数组,不需要向量,不需要地图等。
在 c++11 中,您可以使用 std::iota 和 std::array。下面的示例使用 1 到 10 之间的值填充大小为 10 的数组。
std::array<int, 10> a;
std::iota(a.begin(), a.end(), 1);
Edit当然 std::iota 也适用于向量。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)