Namespaces
Variants

std::copyable_function::operator()

С сайта 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*)
 
 
R operator()( Args... args ) /*cv*/ /*ref*/ noexcept(/*noex*/);
(начиная с C++26)

Вызывает сохранённый вызываемый объект с параметрами args. Части /*cv*/, /*ref*/ и /*noex*/ из operator() идентичны соответствующим частям параметра шаблона std::copyable_function.

Эквивалентно return std::invoke_r<R>(/*cv-ref-cast*/(f), std::forward<Args>(args)...);, где f — это lvalue без cv-квалификации, обозначающее целевой объект *this, и /*cv-ref-cast*/(f) эквивалентно:

  • f если cv ref пусто или равно &, или
  • std::as_const(f) если cv ref равно const или const &, или
  • std::move(f) если cv ref равно &&, или
  • std::move(std::as_const(f)) если cv ref равно const &&.

Поведение не определено, если *this пусто.

Параметры

args - параметры для передачи сохраненному вызываемому целевому объекту

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

std:: invoke_r < R > ( /*приведение-cv-ссылки*/ ( f ) , std:: forward < Args > ( args ) ... ) .

Исключения

Распространяет исключение, выброшенное вызовом базовой функции.

Пример

Смотрите также

вызывает целевой объект
(публичная функция-член std::function<R(Args...)> )
вызывает целевой объект
(публичная функция-член std::move_only_function )
вызывает сохранённую функцию
(публичная функция-член std::reference_wrapper<T> )
(C++17) (C++23)
вызывает любой Callable объект с заданными аргументами с возможностью указания возвращаемого типа (начиная с C++23)
(шаблон функции)