Книга: Standard Template Library Programmer



Category: functors

Component type: type


Logical_not<T> is a function object; specifically, it is an Adaptable Predicate, which means it is a function object that tests the truth or falsehood of some condition. If f is an object of class logical_not<T> and x is an object of class T (where T is convertible to bool) then f(x) returns true if and only if x is false.


Transforms a vector of bool into its logical complement.

vector<bool> V;

transform(V.begin(), V.end(), V.begin(), logical_not<bool>());


Defined in the standard header functional, and in the nonstandard backward-compatibility header function.h.

Template parameters

Parameter Description
T The type of logical_not's argument

Model of

Adaptable Predicate, DefaultConstructible

Type requirements

T must be convertible to bool.

Public base classes

unary_function<T, bool>


Member Where defined Description
argument_type Adaptable Unary Function The type of the second argument: T
result_type Adaptable Unary Function The type of the result: bool
bool operator()(const T& x) const Unary Function Function call operator. The return value is !x.
logical_not() Default Constructible The default constructor.

See also

The function object overview, logical_or, logical_and.

Оглавление книги

Оглавление статьи/книги

Генерация: 1.095. Запросов К БД/Cache: 3 / 0
Вверх Вниз