如何取出vector中的元素 c 如何自動(dòng)創(chuàng)建vector對(duì)象?
c 如何自動(dòng)創(chuàng)建vector對(duì)象?# inclusive stream mgt # inclultvectorgtusingnamespacetmain(void){ typedefvectorli
c 如何自動(dòng)創(chuàng)建vector對(duì)象?
# inclusive stream mgt # inclultvectorgtusingnamespacetmain(void){ typedefvectorlingttvecint//1,new,一個(gè)vector中有10個(gè)int元素,輸出第五個(gè)元素的值,然后釋放內(nèi)存。
vecint * vecnewvecintcutltvec-GTAT(4)LTTENDDELETEVEC//2,新的十個(gè)向量,每個(gè)向量有十個(gè)int元素,輸出第五個(gè)向量的第五個(gè)元素的值,然后釋放內(nèi)存。
VECINT * vectnewVECINT[10]coultlt(vect4)-gtat(5)ltltendldelete[]vectsyst
C 如何實(shí)現(xiàn)vector里面的元素循環(huán)?
在C中可以調(diào)用算法庫(kù)中的reverse()函數(shù)實(shí)現(xiàn)vector中元素的逆序。參考代碼:函數(shù)描述:param
vector怎么添加元素?
你可以從數(shù)組中構(gòu)造。
例如,int a[] {0,1,3,5,6,4,2....}
vectorltintgt v( a,a sizeof( a ) / sizeof( a[0]))
動(dòng)態(tài)添加只能用push_back完成。
可以使用resize來(lái)預(yù)設(shè)vector的容量,這樣可以避免push_back在空間超過(guò)默認(rèn)分配的定量?jī)?nèi)存時(shí),重新分配更大的新空間,并再次復(fù)制原來(lái)的內(nèi)容所造成的效率損失。向量?jī)?nèi)部自動(dòng)維護(hù)一個(gè)量化的內(nèi)存,這個(gè)空間可以通過(guò)capacity()方法查看。
ArrayList和Vector在使用上有什么區(qū)別?。?/h2>
Vector和ArrayList在使用上非常相似,都可以用來(lái)表示一組數(shù)量可變的對(duì)象應(yīng)用,元素可以隨機(jī)訪問(wèn)。1Vector的方法是同步的和線程安全的,但是ArrayList的方法不是。因?yàn)榫€程的同步必然會(huì)影響性能,所以ArrayList的性能優(yōu)于Vector。
2當(dāng)Vector或ArrayList中的元素超過(guò)其初始大小時(shí),Vector會(huì)將其容量增加一倍,而ArrayList只會(huì)將其大小增加50%,這樣ArrAyList有利于節(jié)省內(nèi)存空間。