C++ 使用STL删除链表中的特定节点 struct节点 { int数据; 节点*下一步; }; 类链接列表 { 节点*头; 公众: linklist(){head=NULL;} void Delete_a_节点(?,);\\n不知道如何调用此函数 }; int
使用STL删除链表中的特定节点C++ 使用STL删除链表中的特定节点 struct节点 { int数据; 节点*下一步; }; 类链接列表 { 节点*头; 公众: linklist(){head=NULL;} void Delete_a_节点(?,);\\n不知道如何调用此函数 }; int ,c++,c++11,stl,C++,C++11,Stl,使用STL删除链表中的特定节点 struct节点 { int数据; 节点*下一步; }; 类链接列表 { 节点*头; 公众: linklist(){head=NULL;} void Delete_a_节点(?,);\\n不知道如何调用此函数 }; int main() { 列表l1; 链接列表ll1; . . . for(int i=0;i>元素; l1.推回(元件); } 您是否希望void Delete_a_节点(int offset,std::list&l){l.erase(std::ne
struct节点
{
int数据;
节点*下一步;
};
类链接列表
{
节点*头;
公众:
linklist(){head=NULL;}
void Delete_a_节点(?,);\\n不知道如何调用此函数
};
int main()
{
列表l1;
链接列表ll1;
.
.
.
for(int i=0;i>元素;
l1.推回(元件);
}
您是否希望void Delete_a_节点(int offset,std::list&l){l.erase(std::next(l.begin(),offset));}<代码> >为什么使用<代码> STD::列表<代码> >代码>链接列表> /代码>同时,函数<代码> DeleTeEyAyNoad < /C++ >在您所发布的代码中没有定义。不是类列表的成员函数,它是一个用户生成的函数。因此,为了访问这个函数,我使用了Link列表。@ JAROD42:对不起,但是我没有完全得到您的代码。现在考虑,DeleTeE.AyNoad()函数不应该使用类成员函数。简言之,我想问你,如何编写程序,它一半由STL编写,一半由普通的面向对象编程编写。(此处,创建链表由STL完成,但删除节点不应由STL完成。ll1
从未填充;没有向其中添加节点,因此没有要从中删除的节点。您的问题没有任何意义。
struct node
{
int data;
node* next;
};
class linklist
{
node* head;
public:
linklist(){ head = NULL;}
void Delete_a_Node( ? , ? ); \\ Not getting how to call this function
};
int main()
{
list<int> l1;
linklist ll1;
.
.
.
for (int i = 0; i < no; i++)
{
cin >> element;
l1.push_back(element);
}
cout << "Original list: " << endl;
list<int>::iterator p = l1.begin(); // Printing List elements.
while (p != l1.end()){
cout << *p << " ";
p++;
}
cout << endl << endl;
cout << "which node do you want to delete" << endl;
cin >> m;
ll1.Delete_a_Node(m, p); \\ Getting Error
_getch();
return 0;
}