当前位置: 首页 > news >正文

容器算法迭代器初识

#include<iostream>
using namespace std;
#include<vector>
//vetor容器存放内置数据类型
void test01()
{//创建了一个vector容器,数组 vector<int> v;//向容器中插入数据v.push_back (10);//尾插 v.push_back (20);v.push_back (30);v.push_back (40);//通过迭代器访问容器中的数据//iterator 迭代器名称 //v.begin 起始迭代器  指向容器中的第一个元素 vector<int>::iterator itBegin = v.begin(); vector<int>::iterator itEnd = v.end();//v.end 结束迭代器 指向容器中最后一个元素的下一个位置 //访问容器中的数据//第一种遍历方式while(itBegin != itEnd) {cout<<*itBegin<<endl;itBegin++;}} 
int main(){test01();system("pause");}
#include<iostream>
using namespace std;
#include<vector>
//vetor容器存放内置数据类型
void test01()
{//创建了一个vector容器,数组 vector<int> v;//向容器中插入数据v.push_back (10);//尾插 v.push_back (20);v.push_back (30);v.push_back (40);//第二种遍历方式for(vector<int>::iterator it = v.begin();it!=v.end();it++){cout<<*it<<endl;} } 
int main(){test01();system("pause");}
#include<iostream>
using namespace std;
#include<vector>
#include<algorithm> //标准算法头文件 
//vetor容器存放内置数据类型
void myPrint(int val)
{cout<<val<<endl;
}
void test01()
{//创建了一个vector容器,数组 vector<int> v;//向容器中插入数据v.push_back (10);//尾插 v.push_back (20);v.push_back (30);v.push_back (40);//第三种遍历方式   利用STL提供的遍历算法 for_each(v.begin(),v.end(),myPrint); } 
int main(){test01();system("pause");}

运行结果:

#include<iostream>
using namespace std;
#include<vector>
#include<string>
//vector容器中存放自定义数据类型
class Person{
public:Person(string name,int age){this->m_Name = name;this->m_Age = age;}string m_Name;int m_Age;
}; 
void test01()
{//创建了一个vector容器,数组 vector<Person> v;Person p1("aaa",10);Person p2("bbb",20);Person p3("ccc",30);Person p4("ddd",40);Person p5("eee",50);//向容器中添加数据v.push_back(p1);v.push_back(p2);v.push_back(p3);v.push_back(p4);v.push_back(p5);//遍历容器中的数据for(vector<Person>::iterator it = v.begin();it!=v.end();it++)  {//cout<<"姓名"<<(*it).m_Name<<"年龄" <<(*it).m_Age<<endl;cout<<"姓名"<<it->m_Name<<"年龄" <<it->m_Age<<endl; }} 
int main(){test01();system("pause");}

 存放自定义数据类型的指针 :

#include<iostream>
using namespace std;
#include<vector>
#include<string>
//vector容器中存放自定义数据类型
class Person{
public:Person(string name,int age){this->m_Name = name;this->m_Age = age;}string m_Name;int m_Age;
}; 
//存放自定义数据类型的指针 
void test02()
{//创建了一个vector容器,数组 vector<Person*> v;Person p1("aaa",10);Person p2("bbb",20);Person p3("ccc",30);Person p4("ddd",40);Person p5("eee",50);//向容器中添加数据v.push_back(&p1);v.push_back(&p2);v.push_back(&p3);v.push_back(&p4);v.push_back(&p5);//遍历容器中的数据for(vector<Person*>::iterator it = v.begin();it!=v.end();it++)  {cout<<"姓名"<<(*it)->m_Name<<"年龄" <<(*it)->m_Age<<endl; }} 
int main(){test02();system("pause");}

运行结果:

http://www.lryc.cn/news/291253.html

相关文章:

  • 瑞_力扣LeetCode_二叉搜索树相关题
  • python爬虫爬取网站
  • c# Get方式调用WebAPI,WebService等接口
  • 银行数据仓库体系实践(11)--数据仓库开发管理系统及开发流程
  • 微信小程序引导用户打开定位授权通用模版
  • JVM篇----第十篇
  • DevSecOps 参考模型介绍
  • 什么是okhttp?
  • R语言基础学习-02 (此语言用途小众 用于数学 生物领域 基因分析)
  • CTF-WEB的入门真题讲解
  • 【C项目】顺序表
  • 【Docker】在Windows下使用Docker Desktop创建nginx容器并访问默认网站
  • 详讲api网关之kong的基本概念及安装和使用(二)
  • 取消Vscode在输入符号时自动补全
  • ElementUI Form:Input 输入框
  • Vue_Router_守卫
  • GDB调试技巧实战--自动化画出类关系图
  • python使用Schedule
  • Linux系列之查看cpu、内存、磁盘使用情况
  • 【C语言】socket编程接收问题
  • Python与ArcGIS系列(二十)GDAL之合并shp和geojson要素图层
  • CGAL5.4.1 边塌陷算法
  • 网络安全知识和华为防火墙
  • Docker 搭建MySQL主从复制-读写分离
  • [linux] which和find有什么区别?
  • 使用Neo4j做技术血缘管理
  • Unity-WebGL
  • 腾讯云部署vue+node项目
  • HBase表结构
  • 本人面试积累面试题更新中