На этом шаге мы рассмотрим стандартные объекты функций.
Стандартная библиотека C++ содержит ряд стандартных объектов функций. Эти объекты перечислены в таблице 1.
Выражение | Описание |
---|---|
negate<type>() | - param |
plus<type>() | param1+param2 |
minus<type>() | param1-param2 |
multiplies<type>() | param1*param2 |
divides<type>() | param1/param2 |
modulus<type>() | param1%param2 |
equal_to<type>() | param1==param2 |
not_equal_to<type>() | param1!=param2 |
less<type>() | param1<param2 |
greater<type>() | param1>param2 |
less_equal<type>() | param1<=param2 |
greater_equal<type>() | param1>=param2 |
logical_not<type>() | !param |
logical_and<type>() | param1&¶m2 |
logical_or<type>() | param1||param2 |
Объект функции less<> является критерием по умолчанию при сортировке или сравнении объектов, поэтому он используется достаточно часто. По умолчанию сортировка всегда проводится по возрастанию (элемент <следЭлемент).
Чтобы использовать стандартные объекты функций, необходимо включить в программу заголовочный файл <functional>:
#include <functional>
В стандартную библиотеку C++ также входит специальный объект функции, который может использоваться при контекстной сортировке строк.
На следующем шаге мы рассмотрим функциональные адаптеры.