嘿,我试图创建一个链表,但我已经陷入了死胡同。 我认为我对模板的了解让我一片空白!
所以我试图创建一个包含对象的链接列表,其中包含对某些数据的引用和对前一个的引用列表中的对象。
这样的事情:
template<class T>
class ClassHeader
{
//-- Variables
T* object;
ClassHeader<T>* previousHeader;
};
我想象它是这样的:
Data______ Data_____
| | | |
|__________| |_________|
^ ^
| |
| Header | Header
|Data* | |Data* |
<---|Header* |<----|Header* |
| | | |
|__________| |_________|
我将继续提及“顶级&#39;其他地方列表的classheader。然后我计划下去列表并访问每个对象&#39;我走了。
到目前为止,我无法弄清楚如何做到这一点,因为我(据我所知)需要知道每个先前对象的类型&#39;在手之前,这是我试图获得的信息!
此外,每个&#39;对象&#39;参考(图中的数据)可以是完全不同的类型。
任何帮助?
答案 0 :(得分:0)
也许来自&#34; Inheritance is the base class of evil&#34;谈话会有所帮助......
可在此处找到相应的源代码 - https://github.com/boostcon/cppnow_presentations_2012/blob/master/fri/value_semantics/value_semantics.cpp
只需从上面的代码中获取类object_t和model_t,然后创建object_t - 列表的数据类型。根据需要定义帮助程序和访问方法。