![](/img/trans.png)
[英]Using child class as a template parameter of a base class and as a nested name specifier
[英]Nested type as template parameter of base class
可能吗?
例:
template<class T>
class A {};
class B : public A<B::C>
{
public:
struct C {};
};
问题是B :: C是未声明的标识符(这是明显的原因),我不知道如何使其工作。 总结:B可以从A派生,模板参数设置为C吗?
在这一点上, B
号是不完整的,因为你还没有定义它应该继承的类。 因此,这里不可能引用B::C
(嵌套类/结构取决于它们的封闭类/结构的完整定义,因为嵌套类型可能并且通常依赖于封闭类的定义)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.