[英]Defining template inheritance by the arguments in c++
我有一个采用参数T的多态模板MyClass。
template<class T>
class MyClass {...};
我想强制继承而不在每个已删除类中指定它,例如:
template<class T, class U : public T>
class MyClass<U> : public MyClass<T>;
有办法吗?
编辑:例如,如果我有
class Base {...};
class Derieved : public Base {...};
然后,如果编译器创建MyClass<Derieved>
则它将添加
class MyClass<Derieved> : public MyClass<Base>
每次我在继承中使用MyClass时都没有指定它。
我希望能够使用任何参数创建MyClass,但是当参数继承自其他类时,模板也将继承。
您要自动检索对象的基类。 可悲的是,至少在C ++ 17之前,集成了编译时反射时才不可能实现。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.