美文网首页
c++string & vector &迭代器

c++string & vector &迭代器

作者: m风满楼 | 来源:发表于2019-07-10 18:01 被阅读0次

迭代器

迭代器:提供一种对对象的间接访问,就迭代器而言,其对象是容器中的元素或者string中的字符。

获取迭代器

有迭代器的类型同时拥有返回迭代器的成员,比如begin(),end()
begin()负责返回指向第一个元素的迭代器
end()负责返回指向尾后迭代器。

迭代器运算符

迭代器使用==,!=比较是否相等,如果两个迭代器指向相同的成员或者都是同一个成员的尾后迭代器。

*iter 返回迭代器iter指向的引用
iter->mem 解应用iter并获取该元素名为mem的成员,等价于(*iter).mem
++iter/--iter 令iter指向容器中下/前一个元素
==/!= 迭代器相等/不等

示例code

#include <iostream>
#include <vector>
#include <string>

using namespace std;

int main()
{
    vector<string> vi;
    for(int i=0;i<100;i++)
    {
        vi.push_back("abc" + to_string(i));
    }

    if (vi.begin() != vi.end())
    {
        auto it = vi.begin();
        cout << "vi.begin:"<<*it <<endl;
    }

    for (auto it=vi.cbegin();it!=vi.cend();it++)
    {
        if(!(*it).empty())
        {
            cout << *it << endl;
            cout << it->c_str() << endl;
        }
    }

    std::cout << "Hello world" << std::endl;

    return 0;
}

迭代器类型

iterator :
const_iterator:
如果容器对象为常量,则begin()返回const_iterator,否则返回iterator。

相关文章

  • c++string & vector &迭代器

    迭代器 迭代器:提供一种对对象的间接访问,就迭代器而言,其对象是容器中的元素或者string中的字符。 获取迭代器...

  • 13.C++ vector 操作

    vector初始化 vector大小 数组方式操作vector 迭代器方式操作vector 反向迭代器操作vect...

  • vector使用

    初始化 添加元素 vector的其他操作 vector ::size_type 遍历 迭代器 迭代器运算

  • C++boolan part3_week4

    1. 迭代器 1.1 迭代器的种类 使用随机访问迭代器的容器:array, vector,deque使用双向迭代器...

  • 16-迭代器与ConcurrentModificationExc

    迭代器与ConcurrentModificationException Vector、ArrayList在迭代的时...

  • STL迭代器失效

    迭代器在移除元素时迭代器可能失效。vector如果开辟新的内存时迭代器可能失效。新增元素时尾迭代器可能失效。......

  • 线程安全list的遍历

    Vector Vector在迭代器遍历时,其他线程增删元素,会抛ConcurrentModificationExc...

  • 迭代器实战——数组分块工具

    迭代器简介 c++中经常会用到这样的写法: 上面代码中,it即是迭代器,通过迭代器自增可以遍历vector容器,而...

  • C++ __STL学习过程

    1.vector 作为容量 初始化: vector作为函数参数进行调用 2.iterator 迭代器 const...

  • C++ 常用代码

    vector 迭代器遍历 C++ 函数模板 冒泡排序 快速排序

网友评论

      本文标题:c++string & vector &迭代器

      本文链接:https://www.haomeiwen.com/subject/qqckkctx.html