std::bit_or
Материал из cppreference.com
< cpp | utility | functional
Определено в заголовочном файле <functional>
|
||
template< class T > struct bit_or; |
(до C++14) | |
template< class T = void > struct bit_or; |
(начиная с C++14) | |
Функциональный объект для выполнения побитового ИЛИ. Эффективно вызывает operator| для типа T
.
Содержание |
[править] Специализации
Стандартная библиотека предоставляет специализацию
|
(начиная с C++14) |
[править] Типы элементы
Тип | Определение |
result_type (устарело в C++17)(удалено в C++20)
|
T
|
first_argument_type (устарело в C++17)(удалено в C++20)
|
T
|
second_argument_type (устарело в C++17)(удалено в C++20)
|
T
|
Эти типы элементы получаются путём открытого наследования std::binary_function<T, T, T>. |
(до C++11) |
[править] Функции-элементы
operator() |
возвращает результат побитового ИЛИ двух аргументов (public функция-элемент) |
std::bit_or::operator()
T operator()( const T& lhs, const T& rhs ) const; |
(до C++14) | |
constexpr T operator()( const T& lhs, const T& rhs ) const; |
(начиная с C++14) | |
Возвращает результат побитового ИЛИ lhs и rhs.
Параметры
lhs, rhs | — | значения для вычисления побитового ИЛИ |
Возвращаемое значение
Результат lhs | rhs.
[править] Исключения
Может генерировать исключения, определённые реализацией.
Возможная реализация
constexpr T operator()(const T &lhs, const T &rhs) const { return lhs | rhs; } |
[править] Отчёты о дефектах
Следующие изменения поведения были применены с обратной силой к ранее опубликованным стандартам C++:
Номер | Применён | Поведение в стандарте | Корректное поведение |
---|---|---|---|
LWG 660 | C++98 | функциональные объекты для побитовых операций отсутствуют | добавлены |