zoukankan      html  css  js  c++  java
  • STL之vector

    1.简介

    # 容器vector表示对象的集合,其中所有对象的类型相同。

    • vector能容纳绝大多数类型的对象作为元素,但引用不是对象,所以不存在包含引用的vector。
    • 集合中每个对象都有一个对应的索引,索引用于访问对象,即vector可以使用下标访问vector的元素。

    # vector和array的关系

    • vector和array相似,均可以使用下标访问元素。
    • vector理解为动态数组,vector可以根据需要随时调整自身大小以便容纳更多元素。

    # vector头文件

      1 #include<vector>

    2.成员函数

    31919f61194761ae9d072d5c653d718c

    3.code实例

      1 #include<iostream>
      2 #include<vector>
      3 using namespace std;
      4 
      5 int main()
      6 {
      7 	int vector_fun();
      8 	vector_fun();
      9 
     10 	system("pause");
     11 	return 0;
     12 }
     13 
     14 int vector_fun()
     15 {
     16 	// 创建一维向量
     17 	//vector<int> v1_int;		
     18 
     19 	// 创建并初始化一维向量
     20 	vector<int> v1_int;
     21 
     22 	// 尾部插入
     23 	v1_int.push_back(1);
     24 	v1_int.push_back(2);
     25 	v1_int.push_back(3);
     26 	v1_int.push_back(4);
     27 
     28 	// 指定位置插入
     29 	v1_int.insert(v1_int.begin(), 0);
     30 
     31 	// 向量大小
     32 	int nsize = v1_int.size();
     33 	cout << nsize << endl;         //5
     34 
     35 	// 下标访问--向量对象的元素
     36 	cout << v1_int[0] << endl;     //0
     37 
     38 	// 引用访问--向量对象的元素
     39 	cout << v1_int.front() << endl;//0
     40 	cout << v1_int.back() << endl; //4
     41 
     42 	// 迭代器访问--向量对象的元素
     43 
     44 	// 方式1:向量迭代器变量
     45 	vector<int>::iterator temp_begin; // 定义向量迭代器变量temp_begin
     46 	vector<int>::iterator temp_end;   // 定义向量迭代器变量temp_end
     47 
     48 	temp_begin = v1_int.begin();// 获取向量对象首元素的迭代器--首迭代器
     49 	temp_end = v1_int.end();    // 获取向量对象尾后元素的迭代器--尾后迭代器
     50 
     51 	for (temp_begin; temp_begin < temp_end; ++temp_begin)
     52 	{
     53 		cout << v1_int[*temp_begin] << endl; // 向量迭代器变量解引用 
     54 	}
     55 
     56 	//方式2:自动迭代器变量
     57 	for (auto i = v1_int.begin(); i < v1_int.end();++i)
     58 	{
     59 		cout << v1_int[*i] << endl; // 自动迭代器变量接引
     60 	}
     61 
     62 	// 指定位置删除
     63 	v1_int.erase(v1_int.begin() + 2); //删除第三个元素
     64 	cout <<"向量长度"<< v1_int.size() << endl;
     65 
     66 	// 清空向量
     67 	v1_int.clear();
     68 	cout <<"向量长度"<< v1_int.size() << endl;
     69 
     70 	return 0;
     71 }
     72 
     73 
  • 相关阅读:
    Oracle 11g R2(11.2.0.4.0)+udev搭建RAC
    在 Linux 中用 nmcli 命令绑定多块网卡
    linux 配置聚合连接team(网卡绑定) , systemd 控制
    7.linux目录结构
    6.VMware备份linux操作系统
    5.linux关机和切换运行模式
    4.linux安装
    linux网络配置知识
    3.Virtual Box的安装
    2.vmWare安装
  • 原文地址:https://www.cnblogs.com/wanglei5205/p/8495944.html
Copyright © 2011-2022 走看看