zoukankan      html  css  js  c++  java
  • vector

    标准库 vector 类型

    vector 是同一种类型的对象的集合,每个对象都有一个对应的整数索引值。

    我们把vector称为容器,是因为它可以包含其他对象,一个容器中所有对象都必须是同一种类型。

    vector是一个类模板(class template),使用模板可以编写一个类定义或函数定义,,而用于多个不同数据类型。

    例1:

    vector<int> ivec;

    vector<Sales_item>Sales_vec;

    定义vector对象要指定类型和一个变量的列表

    上面第一个定义,类型是 vector<int>,该类型既是含有若干int类型对象的vector,变量名为 ivec。

    第二个定义,变量名是 Sales_vec,它所保存的元素是Sales_item类型的对象。

     vector不是一种数据类型,而只是一个类模板,可用于定义任意多种类型。vector类型的每一种都指定了其保存元素的类型。因此,vector<int>和vector<string>都是数据类型。

    列出 初始化vector构造函数:

    vector<T> v1; vector 保存类型为T对象
      默认构造函数v1为空
    vector<T> v2(v1); v2是v1的一个副本
    vector<T> v3(n,i); v3包含n个值为 i 的元素。
    vector<T> v4(n); v4 含有值初始化的元素的n个副本。

    例2:

    View Code
     1 #include<iostream>
     2 #include<vector>//包含头文件
     3 using namespace std;
     4 using std::vector;
     5 int main()
     6 {
     7 
     8      
     9     vector <int> s(10,-1);//10  elements,each initialized to -1
    10 
    11     for(int i =0;i<s.size();++i)
    12     {
    13         cout<<s[i]<<endl;
    14     }
    15 
    16      return 0;
    17 
    18 }

     输出结果:

     二 .vector对象的操作

                                                                                        表中列出几种最重要的vector操作

    v.empty() 如果v为空,则返回true,否则返回false
    v.push_back(t) 在v的末尾增加一个值为t的元素
    v[n] 返回v中位置为n的元素
    v1=v2 把v1的元素替换为v2中元素的副本
    v1==v2 如果v1与v2相等,则返回 true
    v.size() 返回v中元素的个数
    !=,<,<=,>,>= 保持这些操作符惯有的含义

    1.使用size_type类型时,必须指出该类型是在哪里定义的。

    vector<int>::size_type  //ok

    vector::size_type //error

    2.向vector添加元素

       push_back 操作接受一个元素值,并将它作为一个新的元素添加到vector对象的后面,也就是“放在”到对象的“后面”:

     例子:

    View Code
     1 #include<iostream>
     2 #include<vector>//包含头文件
     3 #include<string>
     4 using namespace std;
     5 using std::string;
     6 using std::vector;
     7 int main()
     8 {
     9     string word;
    10     vector<string> text;// empty vector
    11     while(cin>>word)
    12     {
    13        text.push_back(word); // append word to text
    14     }
    15     return 0;
    16         
    17 
    18 }
  • 相关阅读:
    O(1)时间求出栈内元素最小值 小强斋
    图片的轮廓 小强斋
    png 图片的缩放 小强斋
    Dom4j 小强斋
    O(1)时间求出栈内元素最小值 小强斋
    图片的轮廓 小强斋
    png图片的读取 小强斋
    字符串的最大重复数 小强斋
    【Android】数据的四种存储方式
    【就业】签offer和签三方协议的不同
  • 原文地址:https://www.cnblogs.com/canyuexingchen/p/2633610.html
Copyright © 2011-2022 走看看