嘿,我试图创建一个链表的模板链表,我已经跑进了死胡同。 我认为我关于模板的知识让我一片空白!试图创建一个包含不同类型的数据
所以我试图创建一个包含对象,其中包含了引用一些数据和参考以前的对象列表中的一个链表。
所以是这样的:
template<class T>
class ClassHeader
{
//-- Variables
T* object;
ClassHeader<T>* previousHeader;
};
我想象的还要像这样:
Data______ Data_____
| | | |
|__________| |_________|
^ ^
| |
| Header | Header
|Data* | |Data* |
<---|Header* |<----|Header* |
| | | |
|__________| |_________|
,我会保持一个参考列表其他地方的“顶” classheader 。然后,我打算继续下去,并随时访问每个“对象”。
我无法弄清楚如何做到这一点,到目前为止,我将(据我可以告诉)需要知道前手这是我想要的信息,每个前面“对象”的类型要得到!
同样,每个“对象”参考(图中的数据)可以是完全不同的类型。
任何帮助?
为什么它需要包含一个指向对象?为什么不把这个类的实例放置在链表类本身中呢?通常,链接列表由包含列表的数据类型的节点和列表中下一个元素的指针组成。 – Stephen
也许沟模板,并使用[继承](http://stackoverflow.com/q/6118721/395718)。或者,如果继承是不可能的,请使用您自己的VARIANT,它可以包含您关心的所有类型。 – Dialecticus
@Stephen即使它包含实例会不会仍然有同样的问题?因为我仍然需要知道前一个标题的类型以启动* previousHeader,对吧? –