Namespaces
Variants

std::plus

С сайта 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++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 plus;
(до C++14)
template< class T = void >
struct plus;
(начиная с C++14)

Объект-функция для выполнения сложения. Фактически вызывает operator+ для двух экземпляров типа T.

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

Стандартная библиотека предоставляет специализацию std::plus когда 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()
возвращает сумму двух аргументов
(публичная функция-член)

std::plus:: operator()

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

Возвращает сумму lhs и rhs .

Параметры

lhs, rhs - значения для суммирования

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

Результат выражения lhs + rhs .

Исключения

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

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

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