std::bit_and
Определено в заголовке <functional> | ||
|---|---|---|
template< class T > struct bit_and; | (до C++14) | |
template< class T = void > struct bit_and; | (с 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() | возвращает результат побитового И двух аргументов (публичная функция-член) |
std::bit_and::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++.
| DR | Применено к | Поведение, как опубликовано | Корректное поведение |
|---|---|---|---|
| LWG 660 | C++98 | объекты-функции для побитовых операций отсутствуют | добавлены |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/utility/functional/bit_and