標準庫vector表示物件的集合,其中所有物件的型別都相同。集合中的每個物件都有乙個與之對應的索引,索引用於訪問物件。因為vector」容納著「其他物件」,所以它也常被稱為「容器」。
想使用vector,必須包含適當的標頭檔案。如下:
#includeusing namespace std;
c++語言既有類模板,也有函式模板,其中vector是乙個類模板,只有對c++有相當深入的了解才能寫出模板。
模板本身不是類或函式,相反的可以將模板看作編譯器生成類或函式編寫的乙份說明。編譯器根據模板建立類或函式的過程稱為例項化,當使用模板時,需要指出編譯器應把類或函式例項化何種型別。
vectorivec; //ivec儲存int型別的物件
vectorsales_vec; //儲存sales_vec型別的物件
vector> file; //該向量的元素是vector物件
在上述例子中,編譯器根據模板vector生成了三種不同的型別。
vector是模板而非型別,由vector生成的型別必須包括vector中元素的型別。
vector能容納絕大多數型別的物件作為其元素,但是因為引用不是物件,所以不存在包含引用的vector。除此之外,絕大多數(非引用)內建型別和類型別都可以構成vector物件,甚至組成vector的元素也可以是vector。
需要指出的是,在早期版本的c++標準中如果vector的元素還是vector(或者其他型別模板),則其定義的形式與現在的c++11新標準略有不同。在過去,必須在外層vector物件的右尖括號和其他元素之間添乙個空格,如vector>。
某些編譯器仍可能需以老版的宣告語句來處理元素為vector的vector物件。
和任何型別一樣,vector模板控制著定義和初始化向量的方法。
jieba 庫 未完待續
1.安裝 pip無所不能直接 pip install jieba即可 2.cut和lcut的區別jieba.cut生成的是乙個生成器,generator,也就是可以通過for迴圈來取裡面的每乙個詞。jieba.lcut 直接生成的就是乙個listimport jieba s 在我的身下 吧,三樓的人...
python內建型別(未完待續)
sequeue types str,unicode,list,tuple,bytearray,buffer,xrange set types 包括可變集合set和不可變集合frozenset 建立 set iter 增 add item 引數作為整體新增 update iter 引數分拆後新增 刪 ...
nginx 未完待續
yum install y pcre yum install y pcre devel yum install y openssl yum install y openssl devel yum install y zlib yum install y gccyum安裝 yum install y ...