91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

c++ vector怎么用

發布時間:2020-11-02 10:07:13 來源:億速云 閱讀:191 作者:小新 欄目:編程語言

這篇文章主要介紹c++ vector怎么用,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

c++ vector用法是:1、創建vector對象;2、尾部插入數字;3、使用下標訪問元素;4、使用迭代器訪問元素;5、插入元素;6、)刪除元素等等。

在c++中,vector是一個十分有用的容器,c++ vector用法是:

1、基本操作

(1)頭文件#include<vector>.

(2)創建vector對象,vector<int> vec;

(3)尾部插入數字:vec.push_back(a);

(4)使用下標訪問元素,cout<<vec[0]<<endl;記住下標是從0開始的。

(5)使用迭代器訪問元素.

vector<int>::iterator it;
for(it=vec.begin();it!=vec.end();it++)
    cout<<*it<<endl;

(6)插入元素:

vec.insert(vec.begin()+i,a);

在第i+1個元素前面插入a;

(7)刪除元素:

vec.erase(vec.begin()+2);

刪除第3個元素

vec.erase(vec.begin()+i,vec.end()+j);

刪除區間[i,j-1];區間從0開始

(8)向量大小: vec.size();

(9)清空: vec.clear();

2、vector的元素不僅僅可以使int,double,string,還可以是結構體,但是要注意:結構體要定義為全局的,否則會出錯。下面是一段簡短的程序代碼:

#include<stdio.h>
#include<algorithm>
#include<vector>
#include<iostream>
using namespace std;
typedef struct rect
{
    int id;
    int length;
    int width;
  //對于向量元素是結構體的,可在結構體內部定義比較函數,下面按照id,length,width升序排序。
  bool operator< (const rect &a)  const
    {
        if(id!=a.id)
            return id<a.id;
        else
        {
            if(length!=a.length)
                return length<a.length;
            else
                return width<a.width;
        }
    }
}Rect;
int main()
{
    vector<Rect> vec;
    Rect rect;
    rect.id=1;
    rect.length=2;
    rect.width=3;
    vec.push_back(rect);
    vector<Rect>::iterator it=vec.begin();
    cout<<(*it).id<<' '<<(*it).length<<' '<<(*it).width<<endl;    
return 0;
}

3、算法

(1)、使用reverse將元素翻轉:需要頭文件#include<algorithm>

reverse(vec.begin(),vec.end());

將元素翻轉(在vector中,如果一個函數中需要兩個迭代器,一般后一個都不包含.)

(2)、使用sort排序:需要頭文件#include<algorithm>,

sort(vec.begin(),vec.end());

(默認是按升序排列,即從小到大).

可以通過重寫排序比較函數按照降序比較,如下:

定義排序比較函數:

bool Comp(const int &a,const int &b)
{
    return a>b;
}

調用時:sort(vec.begin(),vec.end(),Comp),這樣就降序排序。

以上是c++ vector怎么用的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

乌兰察布市| 巴林左旗| 桃园市| 台东市| 焉耆| 梁山县| 平顶山市| 松阳县| 万年县| 泗阳县| 阳高县| 绥阳县| 锦州市| 堆龙德庆县| 邓州市| 花莲县| 金寨县| 江北区| 东城区| 太湖县| 阳西县| 伽师县| 桃园县| 隆林| 满洲里市| 东山县| 雅江县| 巫溪县| 美姑县| 遂宁市| 万源市| 上思县| 北京市| 家居| 满城县| 高淳县| 五河县| 安岳县| 胶州市| 宝清县| 商南县|