2011-09-27 77 views

回答

0

Boost multi-array像其他任何容器一样具有(没有很好记录)迭代器,因此您可以像平常一样使用它们。

#include <boost/multi_array.hpp> 
#include <iostream> 

int 
main (int ac, char **av) 
{ 
    typedef boost::multi_array<int, 1> array_type; 
    array_type::extent_gen extents; 
    //create some arrays 
    array_type A(extents[3]); 
    array_type B(extents[2]); 
    //assign values 
    A[0] = 4; 
    A[1] = 3; 
    A[2] = 5; 
    B[0] = 1; 
    B[1] = 2; 
    //resize A, (copies original values) 
    A.resize(extents[A.size()+B.size()]); 
    //use iterators for copying 
    std::copy(B.begin(), B.end(), A.end()-B.size()); 
    //check the output. 
    for(size_t i=0;i<A.size();++i){ 
    std::cout<<A[i]<<std::endl; 
    } 
} 
+0

你是对的很难找到有关boost :: multi_array的文档。并感谢你的回答,它真的帮助了我。 – gidorah