这个问题与 Can a nested C++ class inherit its enclosing class? 密切相关
我的情况很复杂,模板似乎意味着前面的 answer不再有效。
class Animal
{
template <typename T>
class Bear : public Animal
{
// …
};
template <typename T>
class Giraffe : public Animal
{
// …
};
};
// example usage
struct MyAnimal : Animal::Bear<Animal> { };
MyAnimal a;
这样的东西可以工作吗?
最佳答案
另一个答案有效,您只需要知道它的语法:
class Animal
{
template <typename T>
class Bear;
template <typename T>
class Giraffe;
};
template <typename T>
class Animal::Bear : public Animal
{
....
};
template <typename T>
class Animal::Giraffe : public Animal
{
....
};
关于c++ - 模板化嵌套 C++ 类可以继承其封闭类吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7966461/