6
ความเชี่ยวชาญเทมเพลตของวิธีการเดียวจากคลาสเทมเพลต
พิจารณาเสมอว่าส่วนหัวต่อไปนี้ซึ่งมีคลาสเทมเพลตของฉันรวมอยู่ใน.CPPไฟล์อย่างน้อยสองไฟล์โค้ดนี้คอมไพล์อย่างถูกต้อง: template <class T> class TClass { public: void doSomething(std::vector<T> * v); }; template <class T> void TClass<T>::doSomething(std::vector<T> * v) { // Do something with a vector of a generic T } template <> inline void TClass<int>::doSomething(std::vector<int> * v) { // Do something with a vector of int's } แต่สังเกตอินไลน์ในวิธีการเฉพาะ …