64)vertor 简单使用
1)简单 代码样例:我的理解 vector 其实就是一个简单的数组,然后通过迭代器来进行 遍历数组中的值,而且有自带push_back()来添加元素
- #include<iostream>
- #include<algorithm>
- #include<vector>
- using namespace std;
- void hanshu()
- {
- vector<int> v1;//v1是一个容器,将你的元素copy到容器中
- v1.push_back();//这个是开始,也就是v1.begin()
- v1.push_back();
- v1.push_back();//这个是结束,也就是v1.end()
- //3 4 5
- //↑ → →
- for(vector<int>::iterator t=v1.begin();t!=v1.end();t++)
- {
- //这个迭代器t就是 v1这个数组中一个元素的指针
- //所以 取值要加*
- cout << *t <<endl;
- cout<<"!!!!!!!!!!!!!!!!!!"<<endl;
- }
- }
- int main()
- {
- hanshu();
- return ;
- }
2)迭代器 有双向迭代器,也有单项迭代器。
3)算法和迭代器能进行无缝的连接
- #include<iostream>
- #include<algorithm>
- #include<vector>
- using namespace std;
- void hanshu()
- {
- vector<int> v1;//v1是一个容器,将你的元素copy到容器中
- v1.push_back(-);
- v1.push_back();
- v1.push_back();
- v1.push_back();
- //算法,算法和迭代器能进行无缝的连接
- cout<<"~~~~~~~"<<count(v1.begin(),v1.end(),)<<endl;
- for(vector<int>::iterator t=v1.begin();t!=v1.end();t++)
- {
- //这个迭代器t就是 v1这个数组中一个元素的指针
- //所以 取值要加*
- cout << *t <<endl;
- cout<<"!!!!!!!!!!!!!!!!!!"<<endl;
- }
- }
- int main()
- {
- hanshu();
- return ;
- }
然后是类的迭代器,其实子容器中,可以放任何类型的变量。
- #include<iostream>
- #include<algorithm>
- #include<vector>
- using namespace std;
- class student
- {
- public:
- student(int a)
- {
- age=a;
- }
- public:
- void show()
- {
- cout<<age<<endl;
- }
- public:
- int age;
- };
- void hanshu()
- {
- //容器实现了数据类型 和 算法的有效分离
- //v1是一个容器,将你的元素copy到容器中
- vector<student> v1;
- student s1();
- student s2();
- student s3();
- v1.push_back(s1);
- v1.push_back(s2);
- v1.push_back(s3);
- for(vector<student>::iterator t=v1.begin();t!=v1.end();t++)
- {
- //这个迭代器t就是 v1这个数组中一个元素的指针
- //所以 取值要加*
- cout << t->age <<endl;
- cout<<"!!!!!!!!!!!!!!!!!!"<<endl;
- }
- }
- int main()
- {
- hanshu();
- return ;
- }
我还可以存我的 对象的首地址,但是 我的容器存的类型要变了 vector<类名*> v1
- #include<iostream>
- #include<algorithm>
- #include<vector>
- using namespace std;
- class student
- {
- public:
- student(int a)
- {
- age=a;
- }
- public:
- void show()
- {
- cout<<age<<endl;
- }
- public:
- int age;
- };
- void hanshu()
- {
- //容器实现了数据类型 和 算法的有效分离
- //v1是一个容器,将你的元素copy到容器中
- vector<student> v1;
- student s1();
- student s2();
- student s3();
- v1.push_back(s1);
- v1.push_back(s2);
- v1.push_back(s3);
- for(vector<student>::iterator t=v1.begin();t!=v1.end();t++)
- {
- //这个迭代器t就是 v1这个数组中一个元素的指针
- //所以 取值要加*
- cout << t->age <<endl;
- cout<<"!!!!!!!!!!!!!!!!!!"<<endl;
- }
- }
- int main()
- {
- hanshu();
- return ;
- }
64)vertor 简单使用的更多相关文章
- Jarvis OJ- [XMAN]level2/3_x64-Writeup——64位简单栈溢出
两道64位栈溢出,思路和之前的32位溢出基本一致,所以放在一起 在这两道中体现的32位和64位的主要区别在于函数参数传递的方式 在32位程序运行中,函数参数直接压入栈中 调用函数时栈的结构为:调用函数 ...
- java gc的工作原理、如何优化GC的性能、如何和GC进行有效的交互
java gc的工作原理.如何优化GC的性能.如何和GC进行有效的交互 一个优秀的Java 程序员必须了解GC 的工作原理.如何优化GC的性能.如何和GC进行有效的交互,因为有一些应用程序对性能要求较 ...
- linux常用命令及安装软件命令
1.查看操作系统是33位还是64最简单的方法 getconf LONG_BIT 或者 uname -a 2.常用命令 2.1基本操作 clear 清屏 2.2安装命令 rpm(redhat packa ...
- Java第6次实验提纲(异常)
PTA与参考资料 题集:集合 异常实验文件 第1次实验 1.1 7-1 常用异常 如何进行强制转换 如何捕获多种类型的异常 1.2 7-2 使用异常机制处理异常输入 在哪里加catch 1.3 7-3 ...
- Java第07次实验提纲(异常)
PTA与参考资料 题集:集合 异常实验文件 第1次实验 1.1 7-1 常用异常 如何进行强制转换.父类型转化为子类型常见错误. 如何捕获多种类型的异常 简要输出异常信息,System.out.pri ...
- OVN架构翻译
概述 ovn-controller是OVN在虚拟机上的agent,北向连接OVN的南向数据库,学习OVN的配置和状态,并使用虚拟机的状态来填充PN表以及Binding表的Chassis列:南向连接op ...
- [考试反思]0714/0716,NOIP模拟测试3/4
这几天时间比较紧啊(其实只是我效率有点低我在考虑要不要坐到后面去吹空调) 但是不管怎么说,考试反思还是要写的吧. 第三次考试反思没写总感觉缺了点什么,但是题都刷不完... 一进图论看他们刷题好快啊为什 ...
- 精选 TOP 面试题
1 两数之和 46.5%简单2 两数相加 35.5%中等3 无重复字符的最长子串 31.1%中等4 寻找两个有序数组的中位数 35.9%困难5 最长回文子串 2 ...
- leecode100热题 HOT 100(2)
# 题名 题解 通过率 难度 出现频率 142 环形链表 II 43.3% 中等 146 LRU缓存机制 43.3% 中等 148 排序链表 ...
随机推荐
- Nginx+uwsgi+django部署项目
nginx把请求转发给uwsgi,然后把uwsgi处理得到的结果返回给浏览器. 安装nginx: yum -y install gcc pcre-devel openssl-devel #安装Ngin ...
- 066-PHP通过函数名调用函数
<?php function hello(){ //定义函数 echo '<br />Hello!<br />'; } function hellophp(){ //定义 ...
- Essay写作没逻辑不要慌,掌握这几点即可
今天文章的内容,真的是很多很多留学生的最大的问题,没有之一:逻辑.是的,你没有看错,也不用惊讶.大家的essay写作得分不高,很多时候不是因为语言问题.排除很多细节表达的不足,更让教授头疼的居然是:内 ...
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 字体图标(Glyphicons):glyphicon glyphicon-tint
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...
- ACM-Special Array
题目描述:Special array 输入n和m(20>=m>=n>0)求出所有满足以下方程的正整数数列 i1,i2,...,in,使i1+i2+...+in=m,且i1> ...
- LeetCode题解分类汇总(包括剑指Offer和程序员面试金典,持续更新)
LeetCode题解汇总(持续更新,并将逐步迁移到本博客列表中) 剑指Offer 数据结构 链表 序号 题目 难度 06 从尾到头打印链表 简单 18 删除链表的节点 简单 22 链表中倒数第k个节点 ...
- Windows操作系统安装JDK环境
Windows操作系统安装JDK环境 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一. Java常见的术语 1>.什么是JVM 只要在需要运行Java应用程序的操作系统上 ...
- CocoaPods安装/卸载/初始化等常用操作
CocoaPods的官网:https://cocoapods.org/,官方指导文档https://guides.cocoapods.org/ 1)ruby gem源更换国内源gems.ruby-ch ...
- 吴裕雄--天生自然 JAVASCRIPT开发学习:语法
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- 初学C#之变量、占位符、转义符、还有就是类型转换
㈠.定义变量 先定义再赋值 int Num1; Num1 = ; 定义的同时赋值 ; 定义多个变量同时赋值,先决条件变量类型相同,例如: string phome = "1891250888 ...