#include<iostream>
#include<list> //双向链表
//#include<forward_list> //单向链表 头 C11
#include<algorithm>
using namespace std;
struct Node
{
int a;
char c;
};
void fun(Node& d)
{
cout << d.a << " " << d.c << "\n";
}
void ListDefine()
{ //结构体链表
list<Node> ls(5);
Node no={112,'a'};
list<Node> ls1(6,no);
//list<Node> ls2(ls1.begin(),ls1.end());
迭代器
list<Node>::iterator ite = ls1.begin();
ite++;ite++;ite++;
//链表迭代器不能进行ite+2…………等等
//不能进行加法运算 只能进行自加
list<Node> ls2(ite,ls1.end());
for_each(ls2.begin(),ls2.end(),fun);
}
void ListSize()
{
Node no={12,'a'};
list<Node> ls(6,no);
cout << ls.size() << endl;
for_each(ls.begin(),ls.end(),fun);
ls.resize(3);
cout << ls.size() << endl;
for_each(ls.begin(),ls.end(),fun);
if(ls.empty()) cout << "kong" << endl;
else cout << "feikong" <<endl;
}
int main()
{
//ListDefine();
ListSize();
return 0;
}