C++ STL函数库 vector(henu.hjy)

我们需要明白vector这是个什么??

答:通俗而言——一个长度根据所需自动改变的数组,同时还可以用于以邻接表的方式进行存储图

使用前提:

头文件#include

使用C时,还应该加入using namespace std;

声明调用方式:

vector name;

typename 可以是任何基本类型,各种数、字符、结构体、STL容器(vector、set、queue....)

注意!!如果typename是vector时">>"之间应有空格!!

vector_>vi;//该_为空格!!!!!!

以下是代码其中一一解释了常用函数的作用,这些注释也是代码中的重难点!

#include 
#include 

using namespace std;

//vector 应用解析
//vector vi;
//vector >vi;两个>>之间应有空格
//vector vi[ArraySize];理解为纵横向都可以变的二维数组
//vector::iterator it = vi.begin();指将第一个元素的特别地址赋给迭代器  用*(it);进行取值
//vi.push_back();
//vi.pop_back();
//vi.size();    vi.clear(); //size是长度,clear是清空

//vi.insert(it,x);用一个迭代器it插入一个元素x  vi.erase(vi.begin()+3);  vi.erase(vi.begin()+1,vi.begin()+3);
//vi.begin()+i; 相当于迭代器(特别的地址),仅可以在vector和string中使用
//vi.end();  指尾元素后的另一个
//vi[i]与*(vi.begin()+i)是等价的

int main()
{
    vector vi;
    for(int i = 1;i<=5;i++){
        vi.push_back(i);
    }
    vector::iterator it = vi.begin();
    //三种取值方式
    //(1)
    cout<<"用第一种方式输出:"<::iterator it1 = vi.begin() ; it1!=vi.end() ; it1++){//不可用 it1

 

最后我从网上找了一下stl中vector的其他一些函数(仅供参考):

c++ stl容器set成员函数:begin()--返回指向第一个元素的迭代器

c++ stl容器set成员函数:clear()--清除所有元素

c++ stl容器set成员函数:count()--返回某个值元素的个数

c++ stl容器set成员函数:empty()--如果集合为空,返回true

c++ stl容器set成员函数:end()--返回指向最后一个元素的迭代器

c++ stl容器set成员函数:equal_range()--返回集合中与给定值相等的上下限的两个迭代器

c++ stl容器set成员函数:erase()--删除集合中的元素

c++ stl容器set成员函数:find()--返回一个指向被查找到元素的迭代器

c++ stl容器set成员函数:get_allocator()--返回集合的分配器

c++ stl容器set成员函数:insert()--在集合中插入元素

c++ stl容器set成员函数:lower_bound()--返回指向大于(或等于)某值的第一个元素的迭代器

c++ stl容器set成员函数:key_comp()--返回一个用于元素间值比较的函数

c++ stl容器set成员函数:max_size()--返回集合能容纳的元素的最大限值

c++ stl容器set成员函数:rbegin()--返回指向集合中最后一个元素的反向迭代器

c++ stl容器set成员函数:rend()--返回指向集合中第一个元素的反向迭代器

c++ stl容器set成员函数:size()--集合中元素的数目

c++ stl容器set成员函数:swap()--交换两个集合变量

c++ stl容器set成员函数:upper_bound()--返回大于某个值元素的迭代器

c++ stl容器set成员函数:value_comp()--返回一个用于比较元素间的值的函数

你可能感兴趣的:(C++学习,STL学习,vector)