C++STL的vector中front(),back(),begin(),end()的用法
一、front( ),back( )的使用
arr.front();
返回的是第一个元素的引用。
arr.back();
返回的的是最后一个元素的引用。
如果定义int c = a.back()
,c并不是一个引用,操作b不会对a中的最后一个元素造成影响。
若定义int &b=a.front();
,则对b的操作会影响a中第一个元素。
#include <iostream>
#include <vector>using namespace std;int main()
{vector<int> a = { 1,2,3,4,5,6,7,8,9 };int &b = a.front();b = 100;cout << b << endl; //b=100cout << a.front() << endl; //a.front()=100int c = a.back();c = 50;cout << c << endl; //c=50cout << a.back() << endl; //a.back()=9system("pause");return 0;
}
二、begin( ),end( )的使用
从前向后遍历
vector<int>::iterator itr1 = arr.begin();
while (itr1 != arr.end())
{//do something
}
从后向前遍历
vector<int>::iterator itr2 = arr.end()-1;//arr.end()是指向末尾的指针,arr.end()-1才指向最后一个元素
int len2 = 0;
while (itr2 != arr.begin())
{//do something
}
三、reverse( )的使用
需要头文件#include<algorithm>
reverse(vec.begin(),vec.end());
将元素翻转,即逆序排列。
C++STL的vector中front(),back(),begin(),end()的用法相关推荐
- std::vector中 begin()、end()、front()、back()的区别
前言 之前看见std::vector 容器的begin().end().front().back()用法,了解begin()和end(),不了解front()和back()方法,今天没事查了下博客,验 ...
- STL vector中的begin方法(3)
原文地址:http://www.cplusplus.com/reference/vector/vector/begin/ public member function <vector> s ...
- STL 之vector详解
STL之vector容器详解 vector 容器 vector是C++标准模版库(STL,Standard Template Library)中的部分内容.之所以认为是一个容器,是因为它能够像容器一样 ...
- c++ stl容器vector删除(erase),遍历等基本用法介绍及头文件
Vectors 包含着一系列连续存储的元素,其行为和数组类似.访问Vector中的任意元素或从末尾添加元素都可以在常量级时间复杂度内完成,而查找特定值的元素所处的位置或是在Vector中插入元素则是线 ...
- C++ STL之vector详解
转自http://blog.sina.com.cn/s/blog_9f1c0931010180cy.html Vectors vector是C++标准模板库中的部分内容,它是一个多功能的,能够操 ...
- oracle erase,c++ stl容器vector删除(erase),遍历等基本用法介绍及头文件
Vectors 包含着一系列连续存储的元素,其行为和数组类似.访问Vector中的任意元素或从末尾添加元素都可以在常量级时间复杂度内完成,而查找特定值的元素所处的位置或是在Vector中插入元素则是线 ...
- 黑马程序员C++学习笔记(第三阶段核心:STL)--- 更新中
目录 迭代器 序列式容器 vector -- 可随机访问 list -- 不支持随机访问 deque -- 动态 关联式容器 -- 红黑树 map multimap set multiset -- 废 ...
- C++ [STL之vector模拟实现]
本文已收录至<C++语言和高级数据结构>专栏! 作者:ARMCSKGT STL之vector模拟实现 前言 正文 空间结构 默认成员函数 构造函数 拷贝构造函数 赋值重载 析构函数 关于数 ...
- STL之Vector容器
一.初识Vector容器 学习目标1:学会往Vector容器中添加内置数据类型和Vector容器的遍历 示例: #include "iostream" #include <v ...
最新文章
- $.messager.confirm (使用$.messager.defaults修改按钮显示文字)
- 摘自《解析极限编程-拥抱变化》
- 输出倒逼输入 加速自己成长
- css hack技术整理
- 与时俱进 | 博客现已运行在 .NET Core 3.0 及 Azure 上
- php使用邮件找回密码,php利用Zend_Mail发送邮件(实现邮件重设密码功能)
- JAVA入门级教学之(JAVA程序的加载和运行)
- MOSS 2007 错误0x80040E14解决
- pat1091. Acute Stroke (30)
- 网络地址转换协议NAT详解
- Telnet 窗口看不见字符
- 谈如何边做事,边提高
- Tensorflow:模型保存和服务
- yii2分页的基本使用及其配置详解 1
- 见证云原生创变 2019云原生技术实践峰会落幕
- 公共计算机房电气设计规范,《住宅建筑电气设计规范》(总结版)
- mysql 判断语句_mysql条件判断语句讲解
- 如何获得静态IP资源?
- 计算机三级网络架构图,三级网络技术局域网基础:网络拓扑结构
- 2016元旦台湾自由行
热门文章
- 广度优先遍历算法-02合法的括号问题
- linux ubuntu 安装安卓,借助ubuntu电脑,给安卓手机安装整套ubuntu14.04
- mysql元数据死锁日志,MySQL 实战笔记 第02期:MySQL 元数据锁
- SPOJ7258(后缀自动机--第k大的子串)
- 9.IDA-重新设置函数类型、创建数组结构
- 使用IDA PRO+OllyDbg+PEview 追踪windows API 动态链接库函数的调用过程
- cocos2d-x游戏实例(15)-纵版射击游戏(2)
- cocos2d-x游戏实例(6)-A星算法(2)
- Simpleperf介绍
- 海量数据处理(一) :位图与布隆过滤器的概念以及实现