我想使該函數返回特定節點的地址。但編譯器是 不檢測我創建的節點數據類型結構。如何使函數返回一個結構指針在c + +
struct node
{
int data;
node *link;
};
node *header,*current;
node traverse(int pos);
node *Linkedlist::traverse(int pos)
{
int location = 0;
current->link = header->link;
node *address = new node;
address->data = NULL;
address->link = NULL;
while(current->link != NULL)
{
if(location == pos)
{
cout <<current->link->data <<" "<< endl;
address->link=current->link;
}
location ++;
current->link = current->link->link;
}
return address->link;
}
由於這是一個C++問題,請考慮'std :: unique_ptr'和/或'std :: shared_ptr'。如果你發現自己經常寫「新」和「刪除」,那麼你可能做錯了什麼。 –
我不明白你的問題。請更準確地說你在問什麼。另外,你的代碼似乎有太多的錯誤和不好的做法。 – mualloc