我创建了一个类型,它是一个字符串的优先级队列列表(不是我的主意,我必须这样做):
typedef list<priority_queue<string>> L;
L myList;
现在我需要创建一个类 M,它将继承自该类型。据我所知,我需要使用模板来这样做,但我仍然不知道该怎么做,而且我还没有在网上找到任何东西。
如何使类从类型继承?
最佳答案
就这么简单:
class foo : L { // Note this is private inheritance
};
类型别名只是另一种类型的名称,而不是一种类型本身。因为 std::list
是一个类模板并且 L
命名了一个完整的特化,所以你可以这样做。
请确保不要以涉及delete
指向std::list
的指针的任何多态方式使用它。它不是为此而设计的,因为它缺少虚拟析构函数。
关于C++ 一个类继承自一个类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47658481/