Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die Struktur bietet ein vordefiniertes Funktionsobjekt, das die logische Operation der Negation für Elemente eines angegebenen Werttyps ausführt und für die Richtigkeit oder die Falschheit des Ergebnisses testet.
template<class Type>
struct logical_not : public unary_function<Type, bool>
{
bool operator()(
const Type& _Left
) const;
};
Parameter
- _Left
Der Operand des Typs Typ in der zu testenden Negation.
Rückgabewert
true wenn und nur dann _Leftfalse ist; false wenn und nur dann _Lefttrue. ist
Beispiel
// functional_logical_not.cpp
// compile with: /EHsc
#include <deque>
#include <algorithm>
#include <functional>
#include <iostream>
int main( )
{
using namespace std;
deque<bool> d1, d2 ( 7 );
deque<bool>::iterator iter1, iter2;
int i;
for ( i = 0 ; i < 7 ; i++ )
{
d1.push_back((bool)((i % 2) != 0));
}
cout << boolalpha; // boolalpha I/O flag on
cout << "Original deque:\n d1 = ( " ;
for ( iter1 = d1.begin( ) ; iter1 != d1.end( ) ; iter1++ )
cout << *iter1 << " ";
cout << ")" << endl;
// To flip all the truth values of the elements,
// use the logical_not function object
transform( d1.begin( ), d1.end( ), d2.begin( ),logical_not<bool>( ) );
cout << "The deque with its values negated is:\n d2 = ( " ;
for ( iter2 = d2.begin( ) ; iter2 != d2.end( ) ; iter2++ )
cout << *iter2 << " ";
cout << ")" << endl;
}
Anforderungen
Header: <functional>
Namespace: std