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
Vypověditelný
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