我有一个完全工作的LinkedList,它使用int变量。我正在寻找改变它与对象的工作,但是当涉及到指针时我感到困惑。有什么建议吗?
这是Node结构:
typedef struct Node
{
int data;
Node* next;
}* nodePointer;
这是AddNode函数:
void LinkedList::addNode(int dataToAdd)
{
nodePointer nodeToAdd = new Node;
nodeToAdd->next = NULL;
nodeToAdd->data = dataToAdd;
if(head != NULL)
{
current = head;
while(current->next != NULL)
{
current = current->next;
}
current->next = nodeToAdd;
}//end if
else
{
head = nodeToAdd;
}//end else
}//end addNode
这是几个简单的变化吗?
答案 0 :(得分:1)
这取决于您将使用的对象类型。
对于默认=
操作有意义的任何类,您可以使用现在使用的相同代码,将int
替换为您的对象类型。
对于更复杂的对象(例如,一个持有指向动态分配成员的指针),您必须为此类定义适当的=
运算符或使用复制函数来确保该对象正确复制