其他分享
首页 > 其他分享> > c – 迭代boost :: shared_array

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