Spec-Zone.ru › C++

std::logical_and

Определено в заголовочном файле <functional>
template< class T >
struct logical_and;
(до C++14)
template< class T = void >
struct logical_and;
(начиная с C++14)

Функциональный объект для выполнения логического И (логической конъюнкции). Фактически вызывает operator&& для типа T.

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

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

logical_and<void>
(C++14)
функциональный объект, реализующий x && y с выводом типов параметров и возвращаемого типа
(специализация шаблона класса)
(начиная с C++14)

Типы-члены

Тип Определение
result_type (устарел в C++17)(удалён в C++20) bool
first_argument_type (устарел в C++17)(удалён в C++20) T
second_argument_type (устарел в C++17)(удалён в C++20) T

Эти типы-члены получены посредством публичного наследования от std::binary_function<T,T,bool>.

(до C++11)

Функции-члены

operator()
возвращает логическое И двух аргументов
(открытая функция-член)

std::logical_and::operator()

bool operator()( const T& lhs, const T& rhs ) const;
(constexpr начиная с C++14)

Возвращает логическое И от lhs и rhs.

Параметры

lhs, rhs - значения, для которых вычисляется логическое И

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

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

Исключения

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

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

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

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/utility/functional/logical_and

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API