[英]Using variables of template class type inside another template classes
如何在其他模板類中使用模板類的變量? 關於編譯,我收到錯誤clsC is not a template
-為什么?
---- MyClasses.h: ----
template <typename T> class clsA {
public:
void Foo(typename clsC<T> arg) {...}
...
};
template <typename T> class clsB {
public:
std::vector<clsA<T>> a;
...
};
template <typename T> class clsC {
public:
clsC(typename clsB<T> arg) {...}
...
};
有很多類似的問題,但是到目前為止,沒有一個問題解決了我的問題。
您可能必須添加clsC前向聲明。
template<class T> class clsC;
將此行放在clsA的定義之前。
另外,以下行
std::vector<clsA<T>> a;
應該重寫為
std::vector< clsA<T> > a;
由於編譯器誤解了符號“ >>”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.