Czy wywołując funkcję szablonu, można pominąć typ po nazwie funkcji?Pominięcie argumentów w szablonach C++
Jako przykład rozważmy funkcję
szablon
<typename T
> void f (T var) {...};
Czy można po prostu nazwać tak:
int x = 5;
f (x);
lub czy ma na typ?
int x = 5;
f<int
> (x);
nie można po prostu spróbować i zobaczyć, co się dzieje? Wydaje się łatwe do przetestowania. –
@ Ed Swangren, Metoda "po prostu spróbuj" jest bardzo niedoinformowana. W najlepszym przypadku mówi ci, że dany kompilator dopuszcza daną składnię. Nie mówi nic o semantyce lub poprawności oświadczenia w odniesieniu do standardu językowego. – Trent
Przypuszczam, że mogłem wyjaśnić pytanie. Jak zauważył uprzejmie Trent, nie chodziło o to, czy to się skompiluje. Ciekawi mnie, co dzieje się za kulisami i trudno jest znaleźć dobre informacje tam na zewnątrz! – Chris