在VC++ 10中,以下示例因錯誤C2027失敗:「使用未定義類型'X'」。然而g ++ 4.6編譯它就好了。 template<class T>
class C
{
static const size_t size = sizeof(T);
};
class X : public C<X> { };
那麼哪一個是對的?我如何做到這一點,以便它可以在主流編譯器上運行? 雖然
我在C#項目中使用curiously recurring template pattern(CRTP),但我遇到了一些問題。代碼從上面的鏈接中刪除: public abstract class Base<T> where T : Base<T>{
public T FluentMethod() {
return (T)(this);
}
}
public cl