Поделиться через


Класс pointer_to_unary_function

Преобразует указатель на унарную функцию в адаптируемую унарную функцию. Устарело в C++11, удалено в C++17.

Синтаксис

template <class Arg, class Result>
class pointer_to_unary_function
    : public unary_function<Arg, Result>
{
    explicit pointer_to_unary_function(Result(*pfunc)(Arg));
    Result operator()(Arg left) const;
};

Параметры

pfunc
Бинарная функция для преобразования.

left
Объект, на который вызывается *pfunc .

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

Шаблон класса сохраняет копию pfunc. Она определяет свою функцию-член operator() как возвращающую (* pfunc)(_ Left).

Замечания

Указатель на унарную функцию является объектом функции и может передаваться в любой алгоритм стандартной библиотеки C++, ожидающий унарную функцию в качестве параметра, но не может настраиваться. Чтобы использовать его с адаптером, например привязкой значения к нему или его использованием с негатором, его необходимо предоставить с вложенными типами argument_type и result_type сделать такую адаптацию возможной. Преобразование посредством pointer_to_unary_function позволяет адаптерам функций работать с указателями бинарных функций.

Пример

Конструктор pointer_to_unary_function редко используется напрямую. См. раздел по вспомогательной функции ptr_fun с примером того, как объявлять и использовать предикат адаптера pointer_to_unary_function.