close
Пространства имён
Варианты
Действия

std::bitset<N>::set

Материал из cppreference.com
 
 
Библиотека утилит
Языковая поддержка
Поддержка типов (базовые типы, RTTI)
Макросы тестирования функциональности библиотеки (C++20)    
Управление динамической памятью
Программные утилиты
Поддержка сопрограмм (C++20)
Вариативные функции
Трёхстороннее сравнение (C++20)
(C++20)
(C++20)(C++20)(C++20)(C++20)(C++20)(C++20)
Общие утилиты
Дата и время
Функциональные объекты
Библиотека форматирования (C++20)
(C++11)
Операторы отношения (устарело в C++20)
Целочисленные функции сравнения
(C++20)(C++20)(C++20)    
(C++20)
Операции обмена и типа
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
Общие лексические типы
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)
Элементарные преобразования строк
(C++17)
(C++17)
 
std::bitset
Типы элементы
Функции-элементы
Доступ к элементам
Ёмкость
Модификаторы
Преобразования
Функции, не являющиеся элементами
Вспомогательные классы
(C++11)
 
<tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody>
(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 положение устанавливаемого бита (считая от {c

, от наименее значимого к наиболее значимому)}}

value значение для установки бита

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

*this

Исключения

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

Пример

#include <iostream>
#include <bitset>

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++:

Номер Применён Поведение в стандарте Корректное поведение
LWG 186 C++98 тип value был int исправлено на bool

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

устанавливает биты в false
(public функция-элемент) [править]
инвертирует значения битов
(public функция-элемент) [править]