*/
* Copyright (c) 2016,烟台大学计算机与控制工程学院
* All rights reserved.
* 文件名:text.cpp
* 作者:常轩
* 微信公众号:Worldhello
* 完成日期:2016年6月7日
* 版本号:V1.0
* 问题描述:STL迭代器的使用
* 程序输入:无
* 程序输出:见运行结果
*/
//STL迭代器的使用
#include<iostream>
#include<list> //包含双向链表容器头文件
#include<iterator> //迭代器头文件(可以省略)
using namespace std;
int main()
{
list<int>nums; //整型双向链表,长度为0
nums.insert(nums.begin(),-99); //在链表第一个位置插入-99
nums.insert(nums.begin(),4); //在链表第一个位置插入4
nums.insert(nums.end(),50); //在链表尾插入50
list<int>::const_iterator p1; //p1是整型双向链表的迭代子
cout<<"正向输出双向链表中的所有元素:"<<endl;
for(p1=nums.begin();p1!=nums.end();p1++)
cout<<*p1<<" "; //依次输出链表中所有元素:4,-99,50
cout<<endl;
list<int>::reverse_iterator p2; //p2是整型双向链表的迭代子
p2=nums.rbegin(); //反向迭代指向最后一个元素
cout<<"逆向输出双向链表中的所有元素:"<<endl;
while(p2!=nums.rend()) //当反向迭代不指向第一个元素时
{
cout<<*p2<<" "; //逆向输出链表中的所有元素:50,-99,4
p2++;
}
cout<<endl;
return 0;
}

运行结果:

STL迭代器的使用、正向、逆向输出双向链表中的所有元素的更多相关文章

  1. 74 使用BitSet输出数组中的重复元素

    [本文链接] http://www.cnblogs.com/hellogiser/p/using-bitset-to-print-duplicate-elements-of-array.html [题 ...

  2. 【C语言】分别用下标法,地址法和指针法输出数组中的全部元素

    #include<stdio.h> int main() { ] = { ,,,, }; int i, * p; printf("下标法:\n"); ; i < ...

  3. 010-PHP输出数组中第某个元素

    <?php $monthName = array(1 => "January", "February", "March",//初 ...

  4. C++之STL迭代器(iterator)

    [摘要]本文是对STL--迭代器(iterator)的讲解,对学习C++编程技术有所帮助,与大家分享. 原文:http://www.cnblogs.com/qunews/p/3761405.html ...

  5. STL迭代器笔记

    STL迭代器简介 标准模板库(The Standard Template Library, STL)定义了五种迭代器.下面的图表画出了这几种: input         output \       ...

  6. 【C++】:STL迭代器使用---[容器::iterator iter;]

    参考文章:http://blog.csdn.net/qq_23100787/article/details/51388163 迭代器这种东西,就是为了使访问简单!! 容器::iterator iter ...

  7. 一步一步的理解C++STL迭代器

    一步一步的理解C++STL迭代器 "指针"对全部C/C++的程序猿来说,一点都不陌生. 在接触到C语言中的malloc函数和C++中的new函数后.我们也知道这两个函数返回的都是一 ...

  8. C++STL 迭代器

    迭代器类别: 输入迭代器(只读迭代器).输出迭代器(只写迭代器).正向迭代器.双向迭代器.随机访问迭代器 逆向遍历 for(vector<int>::reverse_iterator ri ...

  9. STL迭代器及迭代器失效问题

    迭代器失效: 典型的迭代器失效. 首先对于vector而言,添加和删除操作可能使容器的部分或者全部迭代器失效.那为什么迭代器会失效呢?vector元素在内存中是顺序存储,试想:如果当前容器中已经存在了 ...

随机推荐

  1. 37)智能指针(就是自动delete空间)

    1)问题引入: 在java或者在C++中,一旦你new一个东西,那么必然有一个delete与之对应,比如: int main() { int* p= new int(): *p=: delete p: ...

  2. @ResponseBody与@RestController

    @ResponseBody与@RestController的作用与区别 https://blog.csdn.net/xfl4629712/article/details/78528387

  3. Android之布局LinearLayout

    1.weight属性用法 主要用于view对象屏幕适配比例 如下图,左边是等比例,右边是1:2比例 实现代码: <LinearLayout xmlns:android="http:// ...

  4. Pwn-Gcc编译命令

  5. VerificationCodeService

    package me.zhengjie.system.domain; import lombok.AllArgsConstructor; import lombok.Data; import lomb ...

  6. Apsara Clouder云计算专项技能认证:网站建设-部署与发布

    一.课程学习介绍和学习目标 1.学习内容 掌握如何将一个本地已经设计好的静态网站发布到Internet公共互联网,通过自己的域名让全世界的网民访问到,如何完成工信部的ICP备案,实现监管合规. 2.学 ...

  7. SpringBoot1.X /2.X使用@Component注解注入为java.lang.NullPointException 问题小结

    问题简述: 我们在使用Spring系的产品的时候总是想当然的以为所有指定的Bean都会让Spring来管理,其实不然,即使是Spring出品的产品也不全是的哦,以下是我遇到的一个使用@Componen ...

  8. Mysql Sql 语句练习题 (50道)

    MySql 语句练习50题 表名和字段 –1.学生表 Student(s_id,s_name,s_birth,s_sex) –学生编号,学生姓名, 出生年月,学生性别 –2.课程表 Course(c_ ...

  9. K3CLOUD呼吸时间设置

  10. UFT检查点

    一.标准检查点 选择需要插入检查点的语句,点击右键,选择Insert Standard Checkpoint.... 二.图像检查点(Insert Standard Checkpoint....) 在 ...