Pau*_*sen 1 c++ inheritance templates
我不明白以下代码:
template <int _id> class Model;
template <int _id> class Model : public Model<0> { ... };
Run Code Online (Sandbox Code Playgroud)
所以,类模型似乎从它本身派生出来.这不能用EDG或Gcc编译(错误:无效使用不完整类型'类Model <0>'),但Visual Studio接受它.什么编译器是正确的,出于什么原因?
所以,类模型似乎从它本身派生出来.
该类不继承自己.每个实例Model<N>都是一个不同的,无关的类.
这不能用EDG或Gcc编译(错误:无效使用不完整类型'类Model <0>'),但Visual Studio接受它.什么编译器是正确的,出于什么原因?
海湾合作委员会是正确的,在使用时,Model<0>是不完整的.继承需要完整的类声明.