C++標準庫封裝的vector數(shù)組
前言:
如果構建基本類型的數(shù)組或者自定義類型的數(shù)組,那么需要自己擴展數(shù)組的功能,還有很多需要自己解決的問題,比如需要防止數(shù)組越界問題。此時,可以采用C++標準庫提供的vector模板,vector創(chuàng)建的對象包含眾多封裝好的函數(shù),比如“對象名.size()”函數(shù)可以很方便的查看數(shù)組的大小。下面從定義、使用、做函數(shù)引用等方面分別進行記錄,并討論vector
對象和數(shù)組的區(qū)別。
1、創(chuàng)建和使用vector對象
vector對象的創(chuàng)建和使用語法如下:
/// 創(chuàng)建
vector<類型>對象名(數(shù)組長度, 元素初值)/// 取元素
對象名[下標]/// 使用對象的函數(shù)
對象名.函數(shù)名()
創(chuàng)建vector
對象需要指定的“類型”可以是基本數(shù)據(jù)類型或者是類類型,如果是基本數(shù)據(jù)類型可以使用固定數(shù)值進行初始化(所有元素的初值只能相同);如果“類型”是類類型,那么就會調(diào)用“默認構造函數(shù)”進行初始化。下面第一個例子為基本數(shù)據(jù)類型作為vector元素的例子:
/// 構建vector對象,指定數(shù)組長度為3,初值為666 vector<int>data(3, 666); /// 取元素 printf("%d \n", data[1]); /// 調(diào)用vector對象的函數(shù) printf("%d \n", data.size());
第二個例子是類類型的情況,此時將會調(diào)用類的默認構造函數(shù),用于初始化:
/// 自定義的Duck類 class Duck { public: ? ? /// 默認構造函數(shù) ?? ?Duck() { duckAge = 666; } ?? ?int duckAge; }; /// 創(chuàng)建Duck類型的vector對象 vector<Duck>ducks(3); /// vector的元素為Duck對象,可以調(diào)用Duck對象的成員 printf("%d \n", ducks[1].duckAge);
2、vector對象的引用
vector對象和其它類型的對象在引用的定義和使用的規(guī)則相同,都采用先聲明引用,再將引用指向某個對象,最后通過引用操作對象。
下面是聲明vector類型的引用語法:
vector <類型名>&引用名;
使用引用作為函數(shù)參數(shù)時,最好定義常引用,防止對象被意外的更改:
void vectorSize(vector<int>&vec) { ?? ?printf("%d \n", vec.size()); }
到此這篇關于C++標準庫封裝的vector數(shù)組的文章就介紹到這了,更多相關C++的 vector數(shù)組內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
好用的C++ string Format“函數(shù)”介紹
大家好,本篇文章主要講的是好用的C++ string Format“函數(shù)”介紹,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽2021-12-12