一 Boost::array
   
   在以前,如果我们要处理一组数据,我们可能使用一般数组存储,或者需要许多的对数组的数据的操作的时候,我们使用STL容器存储。但是如果我们的需求是,我们能够提前固定一组数据的大小,或提前知道这组数据的大小,但是我们又想这组数据进行一些操作,比如排序。。。显然对这个情况,上面的使用原始数组或STL容器都有点不太合适,因为原始的数组显得笨重,的我们自己实现一些重复的功能,但是如果是使用STL容器的话,有可能会导致空间和性能的下降。

   基于上面的情况,所以在Boost中引入Boost::array,也可能会被加入下一代的C++标准中。Boost::array,内部仍然是固定长度,但是却拥有向STL容器一样的接口,这样就使的Boost::array能够支持STL中的算法,省去了很多的重复的工作,提高开发效率。


二 源码剖析  

引领Boost(五)(Boost::array) template<class Ty, size_t N>

 

比较简单,只要用过STL容器的,都能明白,最后的几个get,tuple_element,是在tr1中才有的,为了和tuple接口兼容。

 

三 实例 

引领Boost(五)(Boost::array)#include <algorithm>
引领Boost(五)(Boost::array)#include 
<iostream>
引领Boost(五)(Boost::array)#include 
<stdexcept>
引领Boost(五)(Boost::array)
引领Boost(五)(Boost::array)#include 
"boost/array.hpp"
引领Boost(五)(Boost::array)
引领Boost(五)(Boost::array)
const int ELEMS = 6;
引领Boost(五)(Boost::array)
引领Boost(五)(Boost::array)template 
<class Container>
引领Boost(五)(Boost::array)
void do_sort (Container& values)
}

 

相关文章:

  • 2022-12-23
  • 2021-07-31
  • 2022-12-23
  • 2021-07-24
  • 2021-11-01
  • 2022-12-23
  • 2021-11-14
  • 2021-11-01
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-18
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案