참고 자료 : C++.com (http://cplusplus.com/reference/stl/bitset/ )
Bitset은 bit저장을 위해 고안된 특수한 컨테이너다. (각 요소들은 0또는 1만 값을 가짐)
배열과 비슷하지만, 배열의 각 요소들은 1 bit씩의 공간을 차지하도록 고안된 점이 차이.
멤버함수
Bit Operations
- set : 해당 bit를 1로 설정
- unset : 해당 bit를 0으로 설정
- flip : 해당 bit의 값을 뒤집음 (1이면 0으로, 0이면 1로)
Bit access :
operator[] : 각 bit에 대한 접근은 bit[n]으로 접근한다. 배열과 비슷하다. 다만 차이점은.. 이것은 각 bir에 대해서 적용되므로.. 다음과 같은 경우에는 주의가 필요.
char num[4]= "1234" 일때.. 1은 num[0]이 되지만..
bitset의 경우, 1이라는 값은 numbit[3]이다.
Bitset operations :
- to_ulong : bitset의 값을 ulong으로 변환
- to_string : bitset의 값을 string으로 변환
- count : bitset에서 값이 set된 갯수를 카운트 (즉 1을 count)
- size : bitset의 size를 가져옴
- test : bit의 값을 가져옴
- any : 값이 하나라도 set되어 있으면 true반환
- none : 값이 한개도 set되어 있지 않으면 true반환
Bitset은 bit저장을 위해 고안된 특수한 컨테이너다. (각 요소들은 0또는 1만 값을 가짐)
배열과 비슷하지만, 배열의 각 요소들은 1 bit씩의 공간을 차지하도록 고안된 점이 차이.
멤버함수
Bit Operations
- set : 해당 bit를 1로 설정
- unset : 해당 bit를 0으로 설정
- flip : 해당 bit의 값을 뒤집음 (1이면 0으로, 0이면 1로)
Bit access :
operator[] : 각 bit에 대한 접근은 bit[n]으로 접근한다. 배열과 비슷하다. 다만 차이점은.. 이것은 각 bir에 대해서 적용되므로.. 다음과 같은 경우에는 주의가 필요.
char num[4]= "1234" 일때.. 1은 num[0]이 되지만..
bitset의 경우, 1이라는 값은 numbit[3]이다.
Bitset operations :
- to_ulong : bitset의 값을 ulong으로 변환
- to_string : bitset의 값을 string으로 변환
- count : bitset에서 값이 set된 갯수를 카운트 (즉 1을 count)
- size : bitset의 size를 가져옴
- test : bit의 값을 가져옴
- any : 값이 하나라도 set되어 있으면 true반환
- none : 값이 한개도 set되어 있지 않으면 true반환
반응형
댓글