stl list

#include <list>
#include <stdio.h>
#include <algorithm>
#include "listEx.h"
using namespace std;
typedef struct  
{
    char name[100];
    int age;
    char address[100];
}STUDENT;
typedef list<STUDENT> STUDENTLIST;

class EventIsIn11 {
public: 
    bool operator  () (STUDENT &student) {
        
        return student.age == 13;
    }
};
int comp(int n1,int n2)
{
    return n1>n2;
}
int erasecom(int n)
{
    return n<=3;
}
int main()
{
    //初始化
    list<int> c1(3); //建一个含三个默认值是0的元素的链表
    list<int> c2(5,2); //建一个含五个元素的链表,值都是2
    list<int> c4(c2); //建一个c2的copy链表
    list<int> c5(c1.begin(),c1.end()); ////c5含c1一个区域的元素[_First, _Last)。
    

    list<int> ListEx;
    ListEx.push_back(2);
    ListEx.push_back(3);
    ListEx.push_back(4);
    ListEx.push_back(8);
    ListEx.push_back(8);
    //ListEx.assign(2,9);
    ListEx.sort(comp);
    STUDENT aa={"che",10,"jiangsu"};
    STUDENT bb={"che1",11,"jiangsu1"};
    STUDENT cc={"che2",12,"jiangsu2"};
    STUDENT ee={"che1",11,"jiangsu1"};
    STUDENTLIST StudentList;
    StudentList.push_back(aa);
    StudentList.push_back(bb);
    StudentList.push_back(cc);
    ListEx.unique();
    //ListEx.remove_if(erasecom); 
    ListEx.remove(8);


    STUDENTLIST StudentListEx; 
    list<int>::iterator it;
    list<int>::reverse_iterator reverseit;
    STUDENTLIST::iterator StudentIt;
    int i=0;
    for (it=ListEx.begin();it!=ListEx.end();++it)
    {
        printf("1ListEx %d[%d]\r\n",i++,*it);
    }
    for (reverseit=ListEx.rbegin();reverseit!=ListEx.rend();++reverseit)
    {
        printf("2ListEx %d[%d]\r\n",i++,*reverseit);
    }
    for (StudentIt=StudentList.begin();StudentIt!=StudentList.end();++StudentIt)
    {
        printf("StudentList %d[%s]\r\n",i++,(*StudentIt).name);
    }
    StudentIt=find_if(StudentList.begin(),StudentList.end(),EventIsIn11());
    if (StudentIt!=StudentList.end())
    {
        printf("******%s****\r\n",(*StudentIt).name);
    }
    else
    {
        printf("***can not find*****\r\n");
    }

    printf("*******%d**********\r\n",StudentList.front().age);
    
}

 

posted @ 2017-02-28 00:29  cheshulin  阅读(125)  评论(0编辑  收藏  举报