cpp/utility/functional/binary function

is a base class for creating function objects with two arguments.

does not define ; it is expected that derived classes will define this. provides only three types -, and  - defined by the template parameters.

Some standard library function object adaptors, such as std, require the function objects they adapt to have certain types defined; std requires the function object being adapted to have two types named and. Deriving function objects that take two arguments from is an easy way to make them compatible with those adaptors.

is deprecated in C++11 and removed in C++17.