C++ list的实例详解

发布时间 - 2026-01-11 03:28:18    点击率:

 C++ list的实例详解

Source:

#include <iostream>  
#include <list>  
#include <numeric>  
#include <algorithm>   
using namespace std;   
  
typedef list<int> LISTINT;  //创建一个list容器的实例LISTINT 
typedef list<int> LISTCHAR; //创建一个list容器的实例LISTCHAR 
int main(void) {    
  LISTINT listOne;  //用LISTINT创建一个名为listOne的list对象   
  LISTINT::iterator i;  //声明i为迭代器     
  listOne.push_front (2); //从前面向listOne容器中添加数据 
  listOne.push_front (1);   
  listOne.push_back (3); //从后面向listOne容器中添加数据 
  listOne.push_back (4);    
    
  cout<<"listOne.begin()--- listOne.end():"<<endl;  //从前向后显示listOne中的数据 
  for (i = listOne.begin(); i != listOne.end(); ++i)     
    cout << *i << " ";   
  cout << endl;      
      
  LISTINT::reverse_iterator ir;  //从后向后显示listOne中的数据 
  cout<<"listOne.rbegin()---listOne.rend():"<<endl;  
  for (ir =listOne.rbegin(); ir!=listOne.rend();ir++)      
    cout << *ir << " ";       
  cout << endl;      
   
  int result = accumulate(listOne.begin(), listOne.end(),0); //使用STL的accumulate(累加)算法    
  cout<<"Sum="<<result<<endl;   
  
  LISTCHAR listTwo;  //用LISTCHAR创建一个名为listOne的list对象  
  LISTCHAR::iterator j;   //声明j为迭代器    
  listTwo.push_front ('A'); //从前面向listTwo容器中添加数据   
  listTwo.push_front ('B');    
  listTwo.push_back ('x');  //从后面向listTwo容器中添加数据  
  listTwo.push_back ('y');     
  cout<<"listTwo.begin()---listTwo.end():"<<endl; //从前向后显示listTwo中的数据 
  for (j = listTwo.begin(); j != listTwo.end(); ++j)   
    cout << char(*j) << " ";   
  cout << endl;    
  //使用STL的max_element算法求listTwo中的最大元素并显示   
  j=max_element(listTwo.begin(),listTwo.end());    
  cout << "The maximum element in listTwo is: "<<char(*j)<<endl; 
  return 0; 
}  
 
 

Result:

 
[work@db-testing-com06-vm3.db01.baidu.com c++]$ g++ -o list list.cpp 
[work@db-testing-com06-vm3.db01.baidu.com c++]$ ./list 
listOne.begin()--- listOne.end():
1 2 3 4 
listOne.rbegin()---listOne.rend():
4 3 2 1 
Sum=10
listTwo.begin()---listTwo.end():
B A x y 
The maximum element in listTwo is: y

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# C++  # list  # list的使用方法  # list详解  # C++中list的用法实例讲解  # C++入门之list的使用详解  # C++模拟实现list功能  # C++初阶之list的模拟实现过程详解  # C++实现双向链表(List)  # C++中list的使用方法及常用list操作总结  # C++ 使用模板实现一个List的实例  # C++ 模拟实现list(迭代器)实现代码  # C++数据结构之list详解  # 创建一个  # 从前  # 迭代  # 如有  # 希望能  # 谢谢大家  # 疑问请  # int  # LISTINT  # strong  # namespace  # std  # typedef  # listOne  # iterator  # gt  # LISTCHAR  # main  # void  # pre 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251811 】 【 AI营销90571


相关推荐: Python并发异常传播_错误处理解析【教程】  微信h5制作网站有哪些,免费微信H5页面制作工具?  浅谈redis在项目中的应用  Laravel如何实现邮箱地址验证功能_Laravel邮件验证流程与配置  焦点电影公司作品,电影焦点结局是什么?  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  香港服务器租用每月最低只需15元?  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  如何快速生成凡客建站的专业级图册?  如何在万网利用已有域名快速建站?  魔方云NAT建站如何实现端口转发?  文字头像制作网站推荐软件,醒图能自动配文字吗?  如何在搬瓦工VPS快速搭建网站?  北京网站制作的公司有哪些,北京白云观官方网站?  音响网站制作视频教程,隆霸音响官方网站?  如何在不使用负向后查找的情况下匹配特定条件前的换行符  Java解压缩zip - 解压缩多个文件或文件夹实例  Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  如何在 Python 中将列表项按字母顺序编号(a.、b.、c. …)  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能  专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?  如何快速搭建二级域名独立网站?  如何快速查询网站的真实建站时间?  jquery插件bootstrapValidator表单验证详解  如何解决hover在ie6中的兼容性问题  如何构建满足综合性能需求的优质建站方案?  详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点  为什么php本地部署后css不生效_静态资源加载失败修复技巧【技巧】  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  如何快速上传建站程序避免常见错误?  Python进程池调度策略_任务分发说明【指导】  Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】  jQuery 常见小例汇总  JavaScript如何实现倒计时_时间函数如何精确控制  Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置  如何快速打造个性化非模板自助建站?  Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID  JS碰撞运动实现方法详解  Windows Hello人脸识别突然无法使用  Laravel如何使用Gate和Policy进行授权?(权限控制)  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  简单实现jsp分页  简单实现Android文件上传  小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?  JavaScript实现Fly Bird小游戏  node.js报错:Cannot find module &#39;ejs&#39;的解决办法