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型的模板類