1
我正在嘗試轉發聲明從模板類派生的類,該類也必須進行前向聲明。如何轉發聲明從前向聲明的模板基類派生的類?
這裏是類的一個實例:
class TType {
public:
TType() { }
};
template<typename T>
class Base {
public:
Base() { }
};
class Derived : public Base<TType> {
public:
Derived() { }
};
這裏是什麼,我需要一個失敗的猜測:
class TType;
template<typename T> class Base;
class Derived : public Base<TType>; // This fails
Derived* pDerived;
你當然是對的,但是當我嘗試並且失敗時。這是我的錯誤,在forward聲明中,我做了'namespace {class Derived};'然後'class Derived;'。顯然,使用'namespace'來說某事沒有命名空間不同於只是跳過'namespace',所以編譯器告訴我這是不明確的。 – Solx 2012-04-05 16:34:26