Sdílet prostřednictvím


invoke_result – třída

Určuje návratový typ volatelného typu, který přebírá zadané typy argumentů v době kompilace. Přidáno v jazyce C++17.

Syntaxe

template <class Callable, class... Args>
   struct invoke_result<Callable(Args...)>;

// Helper type
template<class Callable, class... Args>
   using invoke_result_t = typename invoke_result<Callable, Args...>::type;

Parametry

Callable
Volatelný typ pro dotaz.

Args
Typy seznamu argumentů k volatelnému typu, který se má dotazovat.

Poznámky

Pomocí této šablony můžete určit typ výsledku Callable(Args...) v době kompilace, kde Volatelné a všechny typy v Args jsou jakýkoli úplný typ, pole neznámé vazby nebo případně cv-qualified void. Člen type šablony třídy pojmenuje návratový typ Callable při vyvolání pomocí argumentů Args.... Člen type je definován pouze v případě, že volání lze volat při vyvolání pomocí argumentů Args... v nehodnoceného kontextu. V opačném případě šablona třídy nemá žádný člen type, který umožňuje SFINAE testy na konkrétní množině typů argumentů v době kompilace.

Požadavky

Header:<type_traits>

Obor názvů: std

Viz také

<type_traits>
Vyvolat