【发布时间】:2017-03-26 14:49:27
【问题描述】:
class LinkedList{
public:
int data;
LinkedList *next;
};
class NewLinkedList: public LinkedList{
public:
int data2;
};
当我使用NewLinkedList 时,它的next 仍然是指向LinkedList 而不是NewLinkedList 的指针,因此我无法在没有类型转换的情况下访问newlinkedlist.next->data2。 (newlinkedlist 是NewLinkedList 的对象。)
如何设计这两个类来避免这个问题?
有SELF_TYPE *next;之类的东西在继承的时候自动变成派生类本身的类型吗?
【问题讨论】:
-
您对虚拟继承有何疑问?
标签: c++ oop inheritance linked-list virtual-inheritance