我在动态分配的数组上有一个唯一指针,如下所示:
const int quantity = 6;
unique_ptr<int[]> numbers(new int[quantity]);
到目前为止这应该是正确的(我认为,[]
模板参数中的 很重要,对吧?)。顺便说一句:是否可以像int some_array[quantity] = {};
这里一样初始化元素?
现在我试图像这样迭代数组:
for (auto it = begin(numbers); it != end(numbers); ++it)
cout << *it << endl;
但我不知道语法如何正确。有办法吗?或者,我可以使用如下索引:
for (int i = 0; i < quantity; ++i)
cout << numbers[i] << endl;
其中之一是首选吗?
(与标题没有直接关系:下一步我想将其减少为基于范围的 for 循环,但我现在只有 VS2010,无法尝试。但是我需要处理一些事情吗?)
谢谢!格里特