類模板派生

1) 普通類派生類模板
2) 類模板也可以派生類模板,這時,派生類模板的參數表中應包含基類模板的參數。 
3) 模板類與普通類一樣也具有多繼承,即模板類之間允許有多繼承。

可以從類模板派生出新的類,既可以派生類模板,也可以派生非模板類。派生方法:
⑴ 從類模板派生類模板可以從類模板派生出新的類模板,它的派生格式如下例所示:
template <class T>
class base
{
};

template <class T>
class derive:public base<T>
{
};
與一般的類派生定義相似,只是在指出它的基類時要綴上模板參數,即base<T>。

⑵ 從類模板派生非模板類  可以從類模板派生出非模板類,在派生中,作爲非模板類的基類,必須是類模板實例化後的模板類,並且在定義派生類前不需要模板聲明語句:template<class>。例如:
template <class T>
class base
{
};
class derive:public base<int>
{
};
在定義derive類時,base已實例化成了int型的模板類
發佈了44 篇原創文章 · 獲贊 7 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章