这个原型类:
template <typename T>
class MyClass
{};
简单地说:
template <typename T>
class MyClass;
但是这个类的原型是什么:
template <typename T>
class MyDerivedClass : public virtual MyBaseClass<T>
{};
如果我删除{}
,我会收到错误:
预期&#39; {&#39;之前&#39;;&#39;令牌
这甚至可能吗?我在Debian Stretch上使用gcc 6.2.1。
答案 0 :(得分:2)
继承说明符是类定义的一部分,而不是它的声明。
您当然可以声明该类,而不是它的继承关系:
template <typename T>
class MyDerivedClass;