std::copyable_function::operator() - cppreference.com (original) (raw)

| R operator()( Args... args ) /*cv*/ /*ref*/ noexcept(/*noex*/); | | (since C++26) | | --------------------------------------------------------------------- | | ------------- |

Invokes the stored callable target with the parameters args. The /*cv*/, /*ref*/, and /*noex*/ parts of operator() are identical to those of the template parameter of std::copyable_function.

Equivalent to return std::invoke_r<R>(/*cv-ref-cast*/(f), std::forward<Args>(args)...);, where f is a cv-unqualified lvalue that denotes the target object of *this, and /*cv-ref-cast*/(f) is equivalent to:

The behavior is undefined if *this is empty.

[edit] Parameters

args - parameters to pass to the stored callable target

[edit] Return value

std::invoke_r<R>(/*cv-ref-cast*/(f), std::forward<Args>(args)...).

[edit] Exceptions

Propagates the exception thrown by the underlying function call.

[edit] Example

[edit] See also

| | invokes the target (public member function of std::function<R(Args...)>) [edit] | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | | invokes the target (public member function of std::move_only_function) [edit] | | | calls the stored function (public member function of std::reference_wrapper) [edit] | | | invokes any Callable object with given arguments and possibility to specify return type(since C++23) (function template) [edit] |