C++ 85 之 STL基础

#include <iostream>
#include <string>
using namespace std;
#include <vector>   // 容器头文件
#include <algorithm> // 标准算法头文件

// 此处的参数类型 和 vector<int>v; 中的类型一致 是 int
void myPrint(int num){ 
    cout << num << endl;
}

int main()
{
    // 原生指针也是迭代器:依序寻访某个容器所含的各个元素
    // int arr[5] = {1,2,3,4,5};
    // int* p = arr;
    // for(size_t i=0; i < 5; i++)
    // {
    //     cout << *(p++) << endl;
    // }


    // vector<类型>名字
    vector<int>v; // 创建了一个v容器,里面存放int类型的数据
    v.push_back(1);  
    v.push_back(2);  
    v.push_back(3);  
    v.push_back(4);  

    // 方法1:
    // v.begin() //起始迭代器,指向容器中的第一个数据
    // iBegin中存的是第一个数据了
    // 相当于int a = 10
    // vector<int>::iterator iBegin  = v.begin();
    // vector<int>::iterator 就是 vector<int>容器的迭代器(iterator)
    // vector<int>::iterator iEnd  = v.end();  // v.end()结束迭代器,指向的是容器中最后一个元素的后一个位置

    // 遍历容器中的数据,只要不等于最后一个的后一个位置,就一直++下去  迭代器就是位置
    // while(iBegin != iEnd)
    // {
    //     cout << *iBegin << endl;
    //     iBegin++;
    // }

    // 方法2:
    // for(vector<int>::iterator it = v.begin(); it != v.end(); it++){
    //     cout << *it << endl;
    // }

    // cout << "---" << endl;

    // 方法3:算法实现     用 for_each(开始迭代器,结束迭代器, 回调函数)  算法实现
    for_each(v.begin(), v.end(), myPrint);    // myPrint自己i写的一个回调函数,不要加小括号,加了会立即执行


    


    return 0;
}

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值