2015-11-05 124 views
1

是否以任何方式將模板的typename參數放入函數名稱中。 例如:將typname插入模板函數名稱

template<typename T> 
class MyTemplate { 
public: 
    void my[T]Something(); 
}; 

MyTemplate<MyThingy> something; 
somethng.myMyThingySomething(); 

回答

2

模板專業化應該爲你解決這個問題。

只需將myMyThingySomething()替換爲mySomething<MyThingy>(),並明確定義類型MyThingymySomething的專用性。

+0

試過這個,我得到這些編譯器錯誤: 錯誤expedted';'在成員聲明的末尾 錯誤變量或字段'mySomething'聲明爲無效 錯誤期望在'<'令牌 –

+0

之前出現unqualified-id而未看到您的代碼,因此很難確定問題os。請參閱此頁以獲取有關模板專業化如何工作的信息:http://en.cppreference.com/w/cpp/language/template_specialization –

相關問題