c – 迭代boost :: shared_array
作者:互联网
你会如何迭代boost :: shared_array中的项目?你会对它做一个get()并使用原始指针作为迭代器吗?
解决方法:
由于你已经使用了boost,可能是这样的:
#include <boost/shared_array.hpp>
#include <boost/range.hpp>
#include <iostream>
int main()
{
boost::shared_array<int> arr(new int[10]());
int* ptr = arr.get();
for (int i : boost::make_iterator_range(ptr, ptr+10))
{
std::cout << i << ',';
}
}
无论如何,你需要自己做一个数组大小的bookeeping.
标签:c98,c,boost 来源: https://codeday.me/bug/20190901/1781014.html