美文网首页
C++:vector的begin()& end()&front(

C++:vector的begin()& end()&front(

作者: AI秘籍 | 来源:发表于2020-04-18 10:12 被阅读0次

1.begin()函数

函数原型:
iterator begin();
const_iterator begin();
功能:返回一个当前vector容器中起始元素的迭代器。

2.end()函数

函数原型:
iterator end();
const_iterator end();
功能:返回一个当前vector容器中末尾元素的迭代器。

begin()和end()大多用在sort()排序的时候,和for(iter=vector.begin();iter!=vector.end())的情况;

3.front()函数

函数原型:
reference front();
const_reference front();
功能:返回当前vector容器中起始元素的引用。

4.back()函数

函数原型:
reference back();
const_reference back();
功能:返回当前vector容器中末尾元素的引用。

5.find()函数

不同于map(map有find方法),vector本身是没有find这一方法,其find是依靠algorithm来实现的。
在vector容器中查找6的数字.

#include <iostream>
#include <algorithm>
#include <vector>
 
int main()
{
    using namespace std;
 
    vector<int> vec;
 
    vec.push_back(1);
    vec.push_back(2);
    vec.push_back(3);
    vec.push_back(4);
    vec.push_back(5);
    vec.push_back(6);
 
    vector<int>::iterator it = find(vec.begin(), vec.end(), 6);
 
    if (it != vec.end())
        cout<<*it<<endl;
    else
        cout<<"can not find"<<endl;
 
    return 0;
}

记着要包含algorithm这一头文件,其定义了find这一函数。

建议大家还是自己手动敲一下。
以后不用再自己遍历,直接调用此函数就可以了.

6.示例

#include <iostream>
#include <vector>
 
using namespace std;
 
int main()
{
    vector<char> v1;
    v1.push_back('m');
    v1.push_back('n');
    v1.push_back('o');
    v1.push_back('p');
 
    cout << "v1.front() = " << v1.front() << endl;
    cout << "v1.back() = " << v1.back() << endl;
 
 
    vector<char>::iterator iter1;
    vector<char>::iterator iter2;
    iter1 = v1.begin();
    cout << *iter1 << endl;
    //注意v1.end()指向的是最后一个元素的下一个位置,
    // 所以访问最后一个元素的正确操作为:v1.end() - 1;
    iter2 = v1.end()-1;
    cout << *iter2 << endl;
    return 0;
}

参考:

  1. image.png

相关文章

  • C++:vector的begin()& end()&front(

    1.begin()函数 函数原型:iterator begin();const_iterator begin();...

  • C++ STL中vector与迭代器用法及front()/bac

    front()/back() 返回vector头尾内的值begin()/end() 返回指向vector头尾的迭代...

  • c++ lib funcs

    - vector fill(v.begin(), v.end(), 0);

  • 2021-01-24

    vector类通过for_each(begin,end,func)可以实现对每一个元素进行操作 allocator...

  • Debt to Income Ratio

    Front-End Debt to Income Ratio The front-end ratio is the...

  • 2020-12-30

    vector无法使用push_front,因为vector的push_front会出现O(n)的操作,为了避免产生...

  • cinder 的 qos 限速

    Cinder 支持 front-end 端和 back-end 端设置 QoS,其中 front-end 表示 h...

  • STL-sort

    ·包含头文件 升序:sort(begin,end,less ());降序:sort(begin,end,great...

  • 2019-05-28 ios touch触摸链

    1、UIView,begin向上传递begin-》beign-〉...-》end-〉end 2、UIContol,...

  • End And Begin

    有些故事还没讲完那就算了吧那些心情在岁月中已经难辨真假如今这里荒草丛生没有了鲜花好在曾经拥有你们的春秋和冬夏 早就...

网友评论

      本文标题:C++:vector的begin()& end()&front(

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