invoke_result, klasa

Określa typ zwracany typu wywoływanego, który pobiera określone typy argumentów w czasie kompilacji. Dodano w języku C++17.

Składnia

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

Nieopłacona
Wywoływany typ zapytania.

Args
Typy listy argumentów do typu wywołującego zapytania.

Uwagi

Użyj tego szablonu, aby określić typ wyniku callable(Args...) w czasie kompilacji, gdzie callable i wszystkie typy w Args są dowolnym pełnym typem, tablicą nieznanej granicy lub prawdopodobnie kwalifikowanym voidcv. Składowa type szablonu klasy nazywa zwracany typ wywołania podczas wywoływania przy użyciu argumentów Args.... Element type członkowski jest definiowany tylko wtedy, gdy można wywołać wywołanie przy użyciu argumentów Args... w nieowartym kontekście. W przeciwnym razie szablon klasy nie ma elementu członkowskiego type, który umożliwia testowanie SFINAE na określonym zestawie typów argumentów w czasie kompilacji.

Wymagania

Nagłówek:<type_traits>

Przestrzeń nazw: std

Zobacz też

<type_traits>
Wywołać