Още едно интересно парче код, което мернах из хаоса 🙂
То е за template<> template<>, ама не много в контекста на Alexandrescu.
Ето как изглежда синтаксиса, когато искаме да специализираме темплейтен метод на темплейтен клас (тествано, че се компилира в gcc и msvc).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
template <typename T> struct TemplateClass { template<typename U> void templateMethod(T foo, U bar) { std::cout << "TemplateClass<T>::templateMethod<U>\n"; } }; //some awesome syntax here template<> template<> void TemplateClass<int>::templateMethod<int>(int foo, int bar) { std::cout << "TemplateClass<int>::templateMethod<int>\n"; } |
Такива парчета код във ФМИ нямаше …
Е ти искаш да откажат хората още в началото ли?
Точно това парче ти го дописа така 🙂