I niedawno dowiedziałem się, że nie mogę:określania rodzajów parametr niezdefiniowanej funkcji
- Take the address of an undefined function
- Take the address of a templatized function with a type it would fail to compile for
Ale ja również niedawno dowiedziałem się, że możecall decltype
to get the return type of said function
Tak więc niezdefiniowana funkcja:
int foo(char, short);
Chciałbym wiedzieć, czy istnieje sposób, że mogę dopasować typy parametrów do typów w tuple
. Jest to oczywiście pytanie dotyczące meta-programowania. Co ja naprawdę strzelanie na to coś jak decltypeargs
w tym przykładzie:
enable_if_t<is_same_v<tuple<char, short>, decltypeargs<foo>>, int> bar;
Czy ktoś może mi pomóc zrozumieć, w jaki sposób mogą być wykonane decltypeargs
?
@Barry To nie jest duplikat tego pytania, wszystkie odpowiedzi wymagają podania adresu mojej funkcji, co wyraźnie powiedziałem, że nie mogę tego zrobić, ponieważ jest nieokreślone. Otwórz ponownie. –
Wątpliwości. Jak myślisz, dlaczego tego potrzebujesz? –
@LightnessRacesinOrbit Tak Wątpię też. Właściwie nie dbam o niezdefiniowane funkcje. Ale byłoby mi bardzo pomocne, gdyby udało mi się uzyskać funkcję funkcji templatetycznej, która nie przetrwałaby SFINAE. –