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 void
cv. 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