程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> 簡單談談C++ 頭文件系列之(bitset)

簡單談談C++ 頭文件系列之(bitset)

編輯:關於C++

簡單談談C++ 頭文件系列之(bitset)。本站提示廣大學習愛好者:(簡單談談C++ 頭文件系列之(bitset))文章只能為提供參考,不一定能成為您想要的結果。以下是簡單談談C++ 頭文件系列之(bitset)正文


簡介

該頭文件有關位集,實際上是vector

位本質上對應bool的概念,只有0或1,true或false兩種對立的值。 但很可惜,字節才是機器上最小的存儲單元,所以bool基本上是由一個字節大小。

bitset是出於高效的空間利用為目的才出現的。

位操作

operator [] : 通過下標訪問bit。
count : 計數位值為1的位個數。
size : 返回位的大小,即有多少個位。
test : 測試下標指向的位值是否為1。
any : 判斷是否有任何一個位值為1。
none : 判斷是否沒有任何一個位值為1.
all : 判斷是否所有位值為1.
set : 設置某一個位值為1.
reset : 重置某一個位值為0.
flip : 翻轉某一個位值,即0變1,1變0.

轉換函數

to_string : 轉換成字符串。
to_ulong : 轉換成unsigned long。
to_ullong : 轉換成unsigned long long。

位集操作

在這裡,bitset可以看成以01位代表的整數。 對於整數,我們又很多操作可以執行:或、並、亦或、左移等等。 頭文件重載了這些操作符,方便我們對位集進行運算:

&、&=
|、|=
^、^=
<<、<<=
>>、>>=
~
==
!=

reference type

因為C++最小的內置類型大小是1個字節,而bit概念上只需要1個bit,所以,與vector

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved