2
我嘗試做這樣的事情:如何參數傳遞到模板的模板參數
ClassA的:
template < typename T1, typename T2 = int >
class ClassA {};
ClassB的使用ClassA的作爲存儲實現:
template
<
typename T,
template < typename = T, typename = int > class Storage = ClassA
>
class ClassB : public Storage<T> {};
現在我我能夠創建ClassB的實例:
ClassB<double> myClass; // Ok, using ClassA (implicit) with <double,int> (implicit)
ClassB<double,ClassA> myClass2; // Ok, using ClassA (explicit) with <double,int> (implicit)
ClassB<double,ClassA<double,int>> myClass3; // Not ok, can't using ClassA (explicit) with <double,int> (explicit)
如何爲ClassB參數化存儲(ClassA)?
感謝您的回答。沒有其他解決方案嗎?這看起來像模板參數3和圖4是ClassB的,但他們是專門ClassA的 –
@jisaak:第要麼這樣,還是讓ClassA的有默認參數,並使用'ClassB的<雙,ClassA的<>>'在第二種情況下。 – kennytm
好的,謝謝。 –