题目:
代码:(输出格式未改)
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
struct Note{
int id;
string data;
};
//
//typedef struct node//学生结构体
//{
// int sno;//学生学号
// string sname;//学生姓名
// double sgrade;//学生成绩
//}Student;
// list<Student> s;
// bool operator ==(const Student &stu1,const Student &stu2)//重载 == ,注意要用const类型
// {
// bool flag=false;
// if(stu1.sno==stu2.sno&&stu1.sname==stu2.sname&&stu1.sgrade==stu2.sgrade)flag=true;
// return flag;
// }
//
bool operator ==(const Note &n1,const Note &n2)//重载 == ,注意要用const类型
{
bool flag=false;
// if(stu1.sno==stu2.sno&&stu1.sname==stu2.sname&&stu1.sgrade==stu2.sgrade)flag=true;
if(n1.data==n2.data)flag=true;
return flag;
}
int main()
{
//Student stu;
//list<Student> s;
//s.remove(stu);
//
//
//
//
//
//
list<Note> A;
Note n1;
// A.remove(n1);
string oper,data;
auto p_a=A.begin(),p_ae=A.end();
int id;
// A.rem
while(cin>>oper)
{
if(oper == "insert")
{
// Note n1;
cin>>n1.id;
cin>>n1.data;
A.push_back(n1);
// A.remove(n1);
cout<<"insert succ"<<endl;
}
else if(oper=="show")
{
for(Note & no : A)
{
cout<<no.data<<endl;
}
}
else if(oper=="search")
{
cin>>n1.data;
for(Note & no : A)
{
if(no.data==data)cout<<no.id<<"is what we search for!"<<endl;
}
// auto ptr=find(p_a,p_ae,n1);
// cout<<(*ptr).data<<endl;
}
else if(oper=="delete")
{
// Note n1;
cin>>n1.data;
A.remove(n1);
cout<<"delete succ!"<<endl;
// A.remove(data);
// for(Note & no : A)
// {
//
// if(no.data==data){A.erase(p_a);
// }
// else p_a++;
// }
}
}
return 0;
}