Namespaces
Variants

std::copyable_function:: operator()

From cppreference.net
Utilities library
Function objects
Function invocation
(C++17) (C++23)
Identity function object
(C++20)
Old binders and adaptors
( until C++17* )
( until C++17* )
( until C++17* )
( until C++17* )
( until C++17* ) ( until C++17* ) ( until C++17* ) ( until C++17* )
( until C++20* )
( until C++20* )
( until C++17* ) ( until C++17* )
( until C++17* ) ( until C++17* )

( until C++17* )
( until C++17* ) ( until C++17* ) ( until C++17* ) ( until C++17* )
( until C++20* )
( until 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 является неквалифицированной cv lvalue, которая обозначает целевой объект * 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)
(шаблон функции)