Namespaces
Variants

std::bit_xor

Материал из 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)
Обмен и операции над типами
(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++23)
Тождественный функциональный объект
(C++20)
Старые связыватели и адапторы
(до C++17*)
(до C++17*)
(до C++17*)
(до C++17*)
(до C++17*)(до C++17*)(до C++17*)(до C++17*)
(до C++20*)
(до C++20*)
(до C++17*)(до C++17*)
(до C++17*)(до C++17*)

(до C++17*)
(до C++17*)(до C++17*)(до C++17*)(до C++17*)
(до C++20*)
(до C++20*)
 
Определён в заголовке <functional>
template< class T >
struct bit_xor;
(до C++14)
template< class T = void >
struct bit_xor;
(начиная с C++14)

Функциональный объект для выполнения побитового XOR. Эффективно вызывает operator^ для типа T.

Специализации

Стандартная библиотека предоставляет специализацию std::bit_xor когда T не указан, что позволяет выводить типы параметров и возвращаемого значения.

функциональный объект, реализующий x ^ y с выводом типов параметров и возвращаемого значения
(специализация шаблона класса)
(начиная с 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 member function)

std::bit_xor:: operator()

T operator ( ) ( const T & lhs, const T & rhs ) const ;
(constexpr since C++14)

Возвращает результат побитового исключающего ИЛИ lhs и rhs .

Параметры

lhs, rhs - значения для вычисления побитового исключающего ИЛИ

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

Результат lhs ^ rhs .

Исключения

Может выбрасывать исключения, определяемые реализацией.

Возможная реализация

constexpr T operator()(const T& lhs, const T& rhs) const
{
    return lhs ^ rhs;
}

Отчеты о дефектах

Следующие отчеты об изменениях в поведении, содержащие описания дефектов, были применены ретроактивно к ранее опубликованным стандартам C++.

DR Applied to Behavior as published Correct behavior
LWG 660 C++98 функциональные объекты для побитовых операций отсутствуют добавлены