#include <iostream>
using namespace std;
#include <vector> //动态数组
#include <algorithm>//算法 void PrintVector(int v) {
cout << v<<" "; } /*
STL
容器算法迭代器
基本语法
*/
void test01() {
vector<int> v; //定义一个容器 指定存放的元素类型
v.push_back(); //把元素放入容器尾部
v.push_back();
v.push_back();
v.push_back();
//STL foreach函数
//容器提供迭代器
//vector<int>::iterator 迭代器类型 等号重载 返回迭代器类型(指针)
vector<int>::iterator pBegin = v.begin();
vector<int>::iterator pEnd = v.end();
//容器中可能存放基础数据类型,也可能存放自定义数据类型
//PrintVector 回调函数 将每个参数传入,并处理
for_each(pBegin, pEnd, PrintVector); } //容器也可以存放自定义类型的数据
class Person {
public:
Person(int age, int id) :age(age), id(id) {};
public:
int age;
int id; }; void test02() {
//创建V 并制定容器元素类型为Person
vector<Person> v;
Person p1(, ), p2(, );
v.push_back(p1);
v.push_back(p2);
v.pop_back(); for (vector<Person>::iterator it = v.begin(); it != v.end(); it++) {
cout << (*it).age << " " << (*it).id << " " << endl;
//vector<Person> v; <>里放的是什么 取*就是什么类型
}
} //algorithm
//容器存放person* 进行打印 自练
//容器里面嵌套容器 一个容器作为另一个容器的元素 int main() {
test02();
}

STL 小白学习(1) 初步认识的更多相关文章

  1. STL 小白学习(10) map

    map的构造函数 map<int, string> mapS; 数据的插入:用insert函数插入pair数据,下面举例说明 mapStudent.insert(pair<, &qu ...

  2. STL 小白学习(9) 对组

    void test01() { //构造方法 pair<, ); cout << p1.first << p1.second << endl; pair< ...

  3. STL 小白学习(8) set 二叉树

    #include <iostream> using namespace std; #include <set> void printSet(set<int> s) ...

  4. STL 小白学习(7) list

    #include <iostream> using namespace std; #include <list> void printList(list<int>& ...

  5. STL 小白学习(5) stack栈

    #include <iostream> #include <stack> //stack 不遍历 不支持随机访问 必须pop出去 才能进行访问 using namespace ...

  6. STL 小白学习(6) queue

    //queue 一端插入 另一端删除 //不能遍历(不提供迭代器) 不支持随机访问 #include <queue> #include <iostream> using nam ...

  7. STL 小白学习(4) deque

    #include <iostream> #include <deque> //deque容器 双口 using namespace std; void printDeque(d ...

  8. STL 小白学习(3) vector

    #include <iostream> using namespace std; #include <vector> void printVector(vector<in ...

  9. STL 小白学习(2) string

    #include <iostream> using namespace std; #include <string> //初始化操作 void test01() { //初始化 ...

随机推荐

  1. reactjs中使用高德地图计算两个经纬度之间的距离

    第一步下载依赖 npm install --save react-amap 第二步,在组件中使用 import React, { Component } from 'react' import { L ...

  2. 灵雀云率先成为 Linux 基金会/CNCF官方认证培训合作伙伴

    近日,灵雀云Alauda成为Linux基金会/CNCF授权培训伙伴项目( Linux Foundation Authorized Training Partner Program,以下简称ATP)在国 ...

  3. HDU 1160

    FatMouse believes that the fatter a mouse is, the faster it runs. To disprove this, you want to take ...

  4. Python 第五阶段 学习记录之---Django 进阶

    Model 一.创建表 1.基本结构 字段 AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) - bi ...

  5. The type groovy.lang.GroovyObject cannot be resolved

    很明显是:编译 Groovy 不通过 解决办法:添加 Groovy 包 比如 maven 项目里: <dependency> <groupId>org.codehaus.gro ...

  6. php取余运算(%) 注意事项

    <?php //php取余运算(%)的那点事,php取余数用%符号,即为模运算 //理论上应该输出45才对,可是实际运算结果是44 $val=9.45; $result=$val*100; ec ...

  7. Kafka学习之(二)Centos下安装Kafka

    环境:Centos6.4,官方下载地址:http://kafka.apache.org/downloads  ,前提是还需要安装了Java环境,本博客http://www.cnblogs.com/wt ...

  8. 1、Storm集群安装

    1.下载 本次选择1.2.2版本进行安装 解压安装到/opt/app目录下 2.配置环境变量 export STORM_HOME=/opt/app/apache-storm-1.2.2 export ...

  9. ubuntu 16.04 tip

    参考 1. 安装 python3.6 sudo add-apt-repository ppa:jonathonf/python-3.6  sudo apt-get update sudo apt-ge ...

  10. 加密方法与HTTPS 原理详解

    一:加密方法: 1,对称加密 AES,3DES,DES等,适合做大量数据或数据文件的加解密. 2,非对称加密 如RSA,Rabin.公钥加密,私钥解密.对大数据量进行加解密时性能较低. 二:https ...