使用节点类

时间:2013-02-25 04:05:02

标签: c++

node *temp; 
temp->dataItem = newPassenger;
if(size == 0)
{
    Head = temp;
    Tail = temp;
}
else
{
    Tail->nextNode = temp;
    Tail = temp;
}
size++;

我需要帮助,因为VS一直说temp没有初始化,我对C ++几乎没有经验。我的节点类如下

#include "passenger.h"
#pragma once
class node
{
public:
    node();
    passenger dataItem;
    node * nextNode;
};

3 个答案:

答案 0 :(得分:1)

node *temp = new node; 
temp->dataItem = newPassenger;
if(size == 0)
{
    Head = temp;
    Tail = temp;
}
else
{
    Tail->nextNode = temp;
    Tail = temp;
}
size++;

答案 1 :(得分:1)

您应该阅读更多介绍性的C ++书籍。这通常很早就被覆盖了。

你应该写

node *temp = new node;

这将为内存中的节点保留空间。当你完成这个节点时,你应该写

delete temp;

您必须确保不要删除两次,因为这会导致程序崩溃。

答案 2 :(得分:0)

node *temp; 
temp->dataItem = newPassenger;

如果上面的代码真的是你的代码,那么编译器非常正确 - 你在没有初始化它的情况下引用temp。你可能想要这样的东西:

node* temp = new node;
temp->dataItem etc...