一、基礎概念
vector是一個封裝了動態大小數組的順序容器(Sequence Container)。與C-style數組不同,它能夠根據需要自動擴展,它是連續存儲的,與數組一樣高效。vector使用很方便,可以通過初始化、push_back、insert等操作進行元素的插入和刪除。vector初始化賦值時有很多方法,下面將一一介紹。
二、初始化賦值
1. 默認初始化
vector v; //v為空vector
默認初始化時,vector中並沒有任何元素,需要使用push_back、insert等函數添加元素。
2. 初始化指定數目的元素
vector v1(5); //v1包含5個初始化元素,每個元素默認值為0
vector v2(6, 2); //v2包含6個初始化元素,每個元素的值都為2
使用含有元素數量的構造函數可以指定vector中元素的數量,並且可以為每個元素指定初始值。如上例所示,v1包含5個元素,每個元素的初始值都為0;v2包含6個元素,每個元素的初始值都為2。
3. 使用數組初始化
int arr[5] = {1, 2, 3, 4, 5};
vector v(arr, arr + 5); //從數組arr中複製5個元素到v中
可以使用數組的元素來初始化vector,只需將數組的起始和結束迭代器傳遞給vector即可。如上例所示,使用數組arr的元素對vector v進行初始化。
4. 使用迭代器初始化
vector v3{3, 1, 4};
vector v4(v3.begin(), v3.end()); //使用迭代器將v3的值複製給v4
可以使用迭代器來初始化vector,只需將起始和結束迭代器傳遞給vector即可。如上例所示,使用v3的迭代器將v3的值複製給v4。
5. 列表初始化
vector v5 = {1, 2, 3}; //列表初始化
可以通過列表初始化來初始化vector,只需使用花括號{}括起來,列表中的元素用逗號分隔即可。如上例所示,用列表初始化的方式初始化vector v5。
三、總結
本文詳細介紹了vector的初始化賦值方法,包括默認初始化、初始化指定數目的元素、使用數組初始化、使用迭代器初始化、列表初始化等。使用vector,開發者可以很方便地添加、刪除元素,實現數據結構的動態變化。我們要根據實際的需求,選擇不同的初始化方式,使得代碼更加簡潔和高效。
原創文章,作者:OYGMY,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/370410.html