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
Исключения
Пример
#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 |
См. также
устанавливает биты в false (публичный член-функция) |
|
| переключает значения битов (публичный член-функция) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/utility/bitset/set