—правочник по C/C++
bitset

 ласс bitset поддерживает операции на множестве битов. —пецификаци€ его шаблона имеет следующий вид.

template <size_t N> class bitset;

«десь элемент N задает длину(в битах) битового множества.  ласс имеет следующие конструкторы.

bitset();
bitset(unsigned long bits);
explicit bitset(const string &s, size_t i = 0, size_t num = npos);

ѕерва€ форма конструктора создает пустое битовое множеств(), ¬тора€ форма создает битовое множество, биты которого установлены в соответствии с заданными значени€ми битов параметра bits. “реть€ форма создает битовое множество с помощью строки s, начина€ с позиции i. —трока должна содержать только единицы и нули. »спользуетс€ только num или s.size()-i значений (выбираетс€ меньшее число).  онстанта npos - это значение, достаточно большое дл€ описани€ максимальной длины строки s.

ƒл€ класса bitset определены операторы вывода << и >>.

 ласс bitset содержит следующие функции-члены.

‘ункци€-член Ќазначение
bool any() const; ¬озвращает истину, если в исследуемом битовом множестве установлен(т.е. равен 1) хот€ бы один бит; в противном случае возвращает ложь
size_type count() const; ¬озвращает количество единичных битов
bitset<N> &flip(); ћен€ет на противоположное (переключает) состо€ние всех битов битового множества и возвращает значение *this
bitset<N> &flip(size_ti); ѕереключает состо€ние бита в позиции i используемого битового множества и возвращает значение *this
bool none() const; ¬озвращает истину, если в используемом битовом множестве не установлен ни один бит
bool operator !=(const bitset<N> &op2) const; ¬озвращает истину, если используемое битовое множество отличаетс€ от другого битового множества, заданного в правой части оператора ор2
bool operator == (const bitset<N> &op2) const; ¬озвращает истину, если используемое битовое множество совпадает с другим битовым множеством, заданным в правой части оператора ор2
bitset<N> &operator &= (const bitset<N> &op2); ¬ыполн€ет логическую операцию » (AND) с каждым битом используемого битового множества и соответствующим битом битового множества в ор2 и оставл€ет результат в первом; возвращает значение *this
bitset<N> &operator ^= (const bitset<N> &op2); ¬ыполн€ет логическую операцию исключающего »Ћ» (XOR) с каждым битом используемого битового множества и соответствующим битом битового множества в ор2 и оставл€ет результат в первом; возвращает значение * this
bitset<N> &operator |= (const bitset<N> &op2); ¬ыполн€ет логическую операцию »Ћ» (OR) с каждым битом используемого битового множества и соответствующим битом битового множества в ор2 и оставл€ет результат в первом; возвращает значение *this
bitset<N> &operator ~=( ) const; ћен€ет на противоположное (переключает) состо€ние всех битов битового множества и возвращает результат
bitset<N> &operator <<= (size_t num); —двигает влево на num позиций каждый бит используемого битового множества, в котором и оставл€ет результат; возвращает значение *this
bitset<N> &operator >>= (size_t num); —двигает вправо на num позиций каждый бит используемого битового множества, в котором и оставл€ет результат; возвращает значение *this
reference operator[](size_type i); ¬озвращает ссылку на бит i в используемом битовом множестве
bitset<N> &reset(); ќчищает все биты в используемом битовом множестве и возвращает значение *this
bitset<N> &reset(size_t i); ќчищает бит в позиции i используемого битового множества и возвращает значение * this
bitset<N> &set(); ”станавливает все биты в используемом битовом множестве и возвращает значение * this
bitset<N> &set(size_t int val = 1); ”станавливает бит в позиции i используемого битового множества равным значению, заданному параметром val, и возвращает значение *this. Ћюбое ненулевое значение параметра val принимаетс€ за 1
size_t size() const; ¬озвращает количество битов, которое может содержать данное битовое множество
bool test(size_t i); ¬озвращает состо€ние бита в позиции i
string to_string() const; ¬озвращает строку, котора€ содержит представление двоичного кода в используемом битовом множестве
unsigned long to_ulong() const; ѕреобразует данное битовое множество в длинное целое без знака






–Э–µ—В –Ї–Њ–Љ–Љ–µ–љ—В–∞—А–Є–µ–≤.



–Ю—Б—В–∞–≤–Є—В—М –Ї–Њ–Љ–Љ–µ–љ—В–∞—А–Є–є:
–Т–∞—И–µ –Ш–Љ—П:
Email:
–Р–љ—В–Є–±–Њ—В: *  
–Т–∞—И –Ї–Њ–Љ–Љ–µ–љ—В–∞—А–Є–є: