創建具體類說我有一個模板類:如何從一個模板類
template <typename T> class StringDeque:
public std::deque<T>
{
public:
...
private:
typedef std::deque<T> BaseClass;
};
說我想創建具體類ArrayString
其中T=std::string
。 什麼是正確的方式來實現這一目標:
定義
#define ArrayString StringDeque<string>
的typedef
typedef StringDeque <string> ArrayString;
繼承
class ArrayString :
public StringDeque <string> {};
我不確定是否所有的建議都有效。無論如何,我試圖找出哪種做法最適合。
我不認爲typedef適用於模板,但你可以說'使用ArrayString = StringDeque;' –
Melkon
2014-09-11 07:03:38
@Melkon Typedef適用於類型,類模板的實例化是一種類型,所以它工作得很好。 – Angew 2014-09-11 07:07:23