STL容器:vector

来源:互联网 发布:淘宝网地板砖 编辑:程序博客网 时间:2024/06/08 12:28

基础

尾部开口,因此在其尾部进行数据的输入输出操作效率最高。
尾部输入成员函数push_back(),尾部删除成员函数pop_back()
常用构造函数见如下程序:

int _tmain(int argc, _TCHAR* argv[]){    vector<int> v1;//构造一个空的容器    for (int i = 0; i < 20; i++)    {        v1.push_back(i);        //vector如何实现内存的动态增长,会预先创建一块内存区,当用完后再重新申请        cout << "v1.size():" << v1.size() << "  v1.capacity()" << v1.capacity()<<endl;//size()元素的个数,capacity() vector的总长度,包括没被初始化的元素    }    vector<int> v2(10);//构造一个长度为10的容器    vector<int> v3(10,2);//构造一个长度为10的容器,并用2初始化它    vector<int> v4(v1);//构造一个容器v4,并用v1初始化它    vector<int> v5(v1.begin()+1, v1.begin()+11);//构造一个容器v5并用v1的部分元素初始化它    return 0;}

数据的访问

int _tmain(int argc, _TCHAR* argv[]){    vector<int> v1;    for (int i = 0; i < 5; i++)    {        v1.push_back(i);    }    cout << "使用下标和at()读取数据" << endl;    for (int i = 0; i < v1.size(); i++)    {        cout << v1[i] << " " << v1.at(i)<<endl;    }    cout << "使用下标和at()来写入数据" << endl;    v1[0] = 10; v1.at(1) = 11;    for (int i = 0; i < v1.size(); i++)    {        cout << v1[i] << " " << v1.at(i) << endl;    }    //使用迭代器来插入数据    vector<int>::iterator iter;    iter = v1.begin();    v1.insert(iter + 1, 0);    cout << "使用迭代器来遍历输出数据" << endl;    for (iter = v1.begin(); iter!= v1.end(); iter++)    {        cout << *iter << endl;    }    return 0;}

其它的常用函数:
clear() 删除容器中所有元素
erase(pos) 删除pos指定位置的元素
erase(begin,end) 删除begin到end-1间的所有元素
insert(pos,elem) 在pos处插入elem,并返回新元素的位置
insert(pos,n,elem) 在pos处插入n个elem
insert(pos,begin,end) 把begin到end-1的所有元素拷贝到pos处
resize(n) 将元素个数改为n
resize(n,elem) 将元素个数改为n,如果size增加,把增加的都初始化为elem

c++11为vertor增加的新内容:
使用{}来初始化和赋值
简单地使用for来遍历元素并进行简单操作

int _tmain(int argc, _TCHAR* argv[]){    vector<int> v1= {1,2,3,4,5};    for (auto &i : v1){        i = i*i;    }    for (auto &i : v1){        cout << i << endl;    }    return 0;}
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 抹胸衣服下掉怎么办 穿抹胸很容易掉怎么办 抹胸衣服老掉怎么办 群里有低俗的人怎么办 老师不收礼物怎么办 发票跨年了怎么办 一用力就头疼怎么办 小孩天天玩游戏怎么办 手机分期人死了怎么办 人死了手机欠费怎么办 晚上想玩手机怎么办 孩子溺水后发烧怎么办 去台湾多次签证怎么办 怀孕不能玩手机怎么办 孕期天天玩手机怎么办 小孩子在家偷钱怎么办 小朋友被鸡抓伤怎么办 宝宝在学校不说怎么办? 宝宝不和小朋友玩怎么办 初中孩子不想上学怎么办 孩子装病不想上学怎么办 中学生叛逆不愿意上学怎么办 孩子去幼儿园哭闹怎么办 孩子哭闹不上学怎么办 孩子中班还哭怎么办 小孩子不爱上幼儿园怎么办 小孩子不爱去幼儿园怎么办 宝宝去幼儿园哭闹怎么办 宝宝上幼儿园哭闹怎么办 小朋友上幼儿园哭闹怎么办 迷路了怎么办幼儿故事 大班迷路了怎么办故事 玩手机眼睛干涩怎么办 宝睡觉不踏实怎么办 觉得自己老了怎么办 微信没自动扣费怎么办 东西放在家找不到怎么办 刚怀孕同房流产怎么办 开车遇上送葬的怎么办 流水钓鱼走漂怎么办 水库里小鱼太多怎么办