vector建構函式的使用

2021-07-28 23:14:41 字數 1537 閱讀 3899

vector容器提供了很多個建構函式,有的建構函式同時也提供了初始化或賦值功能,這很大程度上方便了我們構造vector物件,下面是我們常用的5種建構函式。

1.vector();

說明:無參建構函式,構造乙個vector物件,但未進行初始化,此時元素個數為0。

2.vector( size_type num );

說明:size_type 是size_int的別名,屬於unsigned int,即無符號整形。該建構函式將建立乙個能容納num個元素的vector物件,如果vector的型別是int,則這些元素都初始化為0;如果是char,則為『\0』;如果是string,則是「」空字串。

3.vector( size_type num, const type &val );

說明:構造乙個能容納num個元素的vector物件,並且初始值都設定為val。

4.vector( const vector &from );

說明:建立乙個vector物件,並且把from的值賦值給新建立的物件。

5.vector( input_iterator start, input_iterator end );

說明:建立乙個vector物件,並且input_iterator物件從start位置到end位置的數值付給新建立的物件。

下面對以上的建構函式進行乙個簡單使用測試:

//建構函式

void test_construct(void)

}vector

v7(5);

cout

<< endl << "v7:"

<< endl;

//string 型別的 型別的型別vector 容器 容器不支援copy 輸出

//copy(v7.begin(), v7.end(), ostream_iterator(cout, " "));

cout

<< endl;

cout

<< "v6.size():"

<< v7.size() << endl;

for(vector

::iterator ite = v7.begin(); ite != v7.end(); ite++)}}

1.結果如下:

2.分析

從v1到v5的輸出結果來看,很好理解以上的5個建構函式的用法。v1到v5的vector的元素型別是int,那麼如果是char和string,vector容器如何初始化呢?從v6和v7的測試結果來看,可以知道,char型別的vector容器中的元素的初始值被設定為』\0』,string型別的vector容器中的元素的初始值被設定為空字串。

以上就是常用的5個建構函式的簡單用法,如果有錯誤的地方,歡迎指正!

vector 建構函式

c 11 default 1 explicit vector const allocator type alloc allocator type fill 2 explicit vector size type n vector size type n,const value type val,co...

vector的常用建構函式

vector常用建構函式 建構函式 作用 vector 建立乙個沒有任何元素的空向量 vector vector right 建立乙個向量,並使用向量 right初始化該向量 vector size type count 建立乙個大小為count的向量vect vector size type co...

vector建構函式的學習

vector可以說是使用最為頻繁的stl容器,那麼這個高頻使用的容器,其建構函式有 vector的建構函式 建構函式 作用舉例 vector 建立乙個沒有任何元素的空向量 vectorv1 vector vector right 建立乙個向量,並使用向量 right初始化該向量 vectorv1 v...