C++ list模板类介绍

简介

         List是一种可在常数时间内在任何位置执行插入和删除操作的顺序容器。list是双向链表,其迭代器是双向的。与其他顺序容器(array, vector, deque)相比,list容器在任意位置执行插入、提取、和移动元素的操作更高效,但它不能通过在容器中的位置直接获取元素。

成员函数


复制控制


list::list()

         构造函数:构造一个新的list对象,根据参数初始化list容器的内容。

list::~list()

         析构函数:销毁以list对象。

list::operator=

         为容器分配新的内容,代替当前的内容,随之修改其大小。

示例代码

[cpp]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. #include<iostream>  
  2. #include<list>  
  3.    
  4. using namespace std;  
  5.    
  6. void  
  7. print(list<int> l)  
  8. {  
  9.     for(list<int>::iterator it = l.begin(); it != l.end(); ++it)  
  10.     {  
  11.        cout << *it << "";  
  12.     }  
  13.     cout << endl;  
  14. }  
  15.    
  16. int  
  17. main(void)  
  18. {  
  19.     // list::list()  
  20.     list<int> first;  
  21.     list<int> second(5, 10);  
  22.     list<int> third(second.begin(), second.end());  
  23.     list<int> fourth(third);  
  24.     int arr[] = {1, 2, 3, 4, 5};  
  25.     list<int> fifth(arr, arr + sizeof(arr)/sizeof(int));  
  26.     print(second);  
  27.     print(third);  
  28.     print(fourth);  
  29.     print(fifth);  
  30.      
  31.     // list::operator=  
  32.     first = fifth;  
  33.     print(first);  
  34.      
  35.     return(0);  
  36. }  

Iterator


list::begin()

         返回一个迭代器,指向list的第一个元素。返回值类型:iterator/const_iterator。

list::end()

         返回一个迭代器,指向list的最后一个元素的下一个位置。返回值类型:iterator/const_iterator。

list::rbegin()

        返回一个反转迭代器,指向list的最后一个元素。返回值类型:reverse_iterator/reverse_const_iterator。

list::rend()

         返回一个反转迭代器,指向list的第一个元素的前一个位置。返回值类型:reverse_iterator/reverse_const_iterator。

list::cbegin()

         begin()的const版本。

list::cend()

         end()的const版本

list::crbegin()

         rbegin()的cosnt版本。

list::crend()

         rend()的const版本。

示例代码

[cpp]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. #include <iostream>  
  2. #include <list>  
  3.   
  4. using namespace std;  
  5.   
  6. int  
  7. main(void)  
  8. {  
  9.     int arr[] = {1, 2, 3, 4, 5};  
  10.     list<int> l(arr, arr + sizeof(arr)/sizeof(int));  
  11.       
  12.     // list::begin end  
  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值