Załóżmy, że mam jakieś listy typówDeklarowanie funkcji z typów argumentów zaczerpniętych z pakietem parametrów zagranicznych
template<typename... Types> struct TypeList {};
Teraz w innej klasie mogę wygenerować taki TypeList
w różny sposób.
template<class T> struct MyClass {
using MyList = TypeList<T, typename Something<T>::type, SomethingElse>;
// ...
};
Jak mogę zadeklarować metodę z typami argumentów wyodrębnionych z listy tego typu? Na przykład, jeśli ustawię wartość MyList = TypeList<int, float, const char*>
, chcę zadeklarować deklarację metody.
Co zamierzasz zrobić z funkcją nieznanego podpisu (np .: 'void my_method (T0, T1, T2, ... TN)' z N <= ogromnym)? –
@ DieterLücking Liczne rzeczy! (Nie ma to znaczenia dla zadawanego pytania) –