欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C++ bitset的实现教程

程序员文章站 2022-09-15 20:02:41
C++中bitset很方便的实现了位操作,有几点需要注意 它的模板是 00645 template 00646 cla...

C++中bitset很方便的实现了位操作,有几点需要注意

它的模板是

00645   template<size_t _Nb>  
00646     class bitset  
00647     : private _Base_bitset<_GLIBCXX_BITSET_WORDS(_Nb)>  

size_t 是在编译时候就已经得到了,然后将_Nb除上每个大小得到_Nw,_Nw即为模板泛化得到的首地址:

00077   template<size_t _Nw>  
00078     struct _Base_bitset  
00079     {  
00080       typedef unsigned long _WordT;  
00081   
00082       /// 0 is the least significant word.  
00083       _WordT        _M_w[_Nw];  

因此,bitset不需要像vector一样存一个首地址。