Spec-Zone.ru › C++

std::bitset<N>::set

(1)
bitset& set();
(до C++11)
bitset& set() noexcept;
(с C++11)
(constexpr с C++23)
bitset& set( std::size_t pos, bool value = true );
(2) (constexpr с C++23)

Устанавливает все биты в true или устанавливает один бит в указанное значение.

1) Устанавливает все биты в true.
2) Устанавливает бит в позиции pos в значение value.

Параметры

pos - позиция (считая с ​0​, т.е. с младшего значащего бита к старшему) бита для установки
value - значение, в которое устанавливается бит

Возвращаемое значение

*this

Исключения

2) Бросает std::out_of_range если pos не соответствует допустимой позиции в битовой строке.

Пример

#include <bitset>
#include <cstddef>
#include <iostream>
 
int main()
{
    std::bitset<8> b;
    std::cout << b << '\n';
    std::cout << b.set() << '\n';
    std::cout << b.reset() << '\n';
 
    for (std::size_t i = 1; i < b.size(); i += 2)
        b.set(i);
 
    std::cout << b << '\n';
}

Вывод:

00000000
11111111
00000000
10101010

Отчеты об ошибках

Следующие отчеты об ошибках, изменяющие поведение, были применены ретроактивно к ранее опубликованным стандартам C++.

DR Применено к Поведение, как опубликовано Правильное поведение
LWG 186 C++98 тип value был int исправлено на bool

См. также

reset
устанавливает биты в false
(публичный член-функция)
flip
переключает значения битов
(публичный член-функция)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/utility/bitset/set

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API