Namespaces
Variants

std::bitset<N>::set

От ru.cppreference.net
 
 
Библиотека утилит
Поддержка языка
Поддержка типов (базовые типы, RTTI)
Макросы тестирования возможностей библиотеки (C++20)
Утилиты программ
Функции с переменным числом аргументов
Поддержка корутин (C++20)
Поддержка контрактов (C++26)
Трёхстороннее сравнение
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

Общие утилиты
Операторы отношений (устарело в C++20)
Функции сравнения целых чисел
(C++20)(C++20)(C++20)    
(C++20)
Swap и операции с типами
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
Типы общеупотребительной лексики
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)



 
 
bitset& set();
(1) (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
LWG 2250 C++98 поведение было неопределенным, если pos не
соответствует допустимой позиции бита
всегда выбрасывает
исключение в этом случае

Смотрите также

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