-1
template <class T>
struct ListItem
{
   T value;
   ListItem<T> *next;
   ListItem<T> *prev;

   ListItem(T theVal)
   {
    this->value = theVal;
    this->next = NULL;
    this->prev = NULL;
   }
};

有人可以告诉我在声明 prev 指针后发生了什么。我的意思是它是什么样的结构?对不起,问什么可能是一个愚蠢的问题。谢谢

4

2 回答 2

1
ListItem(T theVal)
{
  this->value = theVal;
  this->next = NULL;
  this->prev = NULL;
}

是一个内联构造函数定义。它指定如何ListItem初始化类模板的实例。value数据成员设置为,theVal列表nextprev指针设置为NULL。你会调用这样的构造函数

ListItem<int> li(42);
于 2013-02-08T13:05:43.840 回答
0
ListItem(T theVal)
{
    this->value = theVal;
    this->next = NULL;
    this->prev = NULL;
}

这是此结构的构造函数,this->value = theVal;将作为参数传入的值分配给结构的成员value

如果您还不了解构造函数,那么阅读它们是明智的。

于 2013-02-08T13:05:04.717 回答