Namespaces
Variants

std:: bit_or

From cppreference.net
Utilities library
Function objects
Function invocation
(C++17) (C++23)
Identity function object
(C++20)
Old binders and adaptors
( until C++17* )
( until C++17* )
( until C++17* )
( until C++17* )
( until C++17* ) ( until C++17* ) ( until C++17* ) ( until C++17* )
( until C++20* )
( until C++20* )
( until C++17* ) ( until C++17* )
( until C++17* ) ( until C++17* )

( until C++17* )
( until C++17* ) ( until C++17* ) ( until C++17* ) ( until C++17* )
( until C++20* )
( until C++20* )
Definiert in Header <functional>
template < class T >
struct bit_or ;
(bis C++14)
template < class T = void >
struct bit_or ;
(seit C++14)

Funktionsobjekt zur Durchführung einer bitweisen ODER-Operation. Ruft effektiv operator | auf Typ T auf.

Inhaltsverzeichnis

Spezialisierungen

Die Standardbibliothek bietet eine Spezialisierung von std::bit_or an, wenn T nicht angegeben ist, wodurch die Parametertypen und der Rückgabetyp abgeleitet werden.

Funktionsobjekt, das x | y implementiert, mit Ableitung der Parameter- und Rückgabetypen
(Klassentemplate-Spezialisierung)
(seit C++14)

Mitgliedertypen

Typ Definition
result_type (veraltet in C++17) (entfernt in C++20) T
first_argument_type (veraltet in C++17) (entfernt in C++20) T
second_argument_type (veraltet in C++17) (entfernt in C++20) T

Diese Member-Typen werden durch öffentliches Vererben von std:: binary_function < T, T, T > erhalten.

(bis C++11)

Memberfunktionen

operator()
gibt das Ergebnis der bitweisen ODER-Verknüpfung zweier Argumente zurück
(öffentliche Elementfunktion)

std::bit_or:: operator()

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

Gibt das Ergebnis der bitweisen ODER-Verknüpfung von lhs und rhs zurück.

Parameter

lhs, rhs - Werte für die bitweise ODER-Verknüpfung

Rückgabewert

Das Ergebnis von lhs | rhs .

Ausnahmen

Kann implementierungsdefinierte Ausnahmen werfen.

Mögliche Implementierung

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

Fehlerberichte

Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.

DR Angewendet auf Verhalten wie veröffentlicht Korrektes Verhalten
LWG 660 C++98 Funktionsobjekte für bitweise Operationen fehlen hinzugefügt