C++之vector向量

  • 容器简介

1、动态数组,可以在运行阶段设置长度
2、具有数组的快速索引方式
3、可以插入和删除元素

  • 容器的定义及初始化
vector<double> vec1;//创建一个容器
vector<string> vecc2(5);//创建一个长度为5的容器
vector<int> vec3(20,998);//创建长度为20的容器,并且元素全部都是998
  • vector容器语法备注
常用操作解释
clear()移除容器中的所有数据
empty()判断容器是否为空
size()返回容器中元素个数
[index]、at(index)返回索引为index的元素
erase(pose)删除pos位置处的数据
erase(beg,end)删除[beg,end)区间的数据
front()返回第一个元素
insert(pose,elem)在pose处插入一个元素
pop_back()删除最后一个元素
push_back(elem)在容器末尾插入一个元素
resize(num)重新设置容器大小
begin()、end()返回容器首位元素的迭代器
#include <iostream>
#include <vector>
using namespace std;

int main()
{
    vector<int> nums;//创建一个向量,只能通过定义的方式,不能直接创建
    for(int i =0; i < 10; i++)
    {
        nums.push_back(i+1);//将元素加进去
    }
    for(int j = 0; j < 10;j++)//打印元素
    {
        cout << nums[j] << "t";
    }
    //打印vector向量的另外几种方法
    /*
    //1、for循环的写法
    for(int i = 0; i < nums.size(); i++)
    {
        cout << nums[i] << "\t";
    }
    //2、迭代器的写法
    for(vector<int>::const_iterator iter = nums.begin(); iter != nums.end(); iter++)
    {
        cout << *iter << "\t";//迭代器是指针,所以用*号
    }
    //3、使用c++11类型推断器
    for(auto iter = nums.begin(); iter != nums.end(); iter++)
    {
        cout << *iter << "\t";
    }
	//4、使用for区间遍历
    for(auto iter : nums)//如果iter在nums里面,就打印iter
    {
        cout << iter << "\t";
    }
    //5、使用算法
    copy(nums.cbegin(),nums.cend(),ostream_iterator<int>(cout, "\t"));//就是从nums的开始到结尾的元素复制到iostream中进行打印输出
    //6、使用算法查找元素
    find(nums.cbegin(),nums.cend(),num);//从nums的开头到结尾,查找num这个元素
    */

//程序输出

1       2       3       4       5       6       7       8       9       10
Process returned 0 (0x0)   execution time : 0.094 s
Press any key to continue.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值