vector是同一種型別的物件的集合,每個物件有乙個對應的整數索引值,也可稱為一種容器。
vector是乙個類模板。
vector乙個重要特性,vector物件動態增長,執行時高效的新增元素(內部實現機制?)
值初始化時的一種情況:
元素型別可能是沒有定義任何建構函式的類型別,標準庫仍然產生乙個帶初始值的物件,物件中的每個成員都進行了值初始化。
vector下標操作注意事項:
for(vector::size_type ix = 0; ix != ivec.size(); ++ix)
ivec[ix] =0;
(1)這裡用!= 比較操作符而不是《操作符;
size()函式有講究,因為vector型別可以動態的增加資料元素,size()函式一般宣告為inline函式。
只能對已經存在的元素進行下標操作,否則會有"災難性"的後果,產生所謂的"緩衝區溢位"錯誤,導致安全問題。
迭代器迭代器是一種檢查容器內元素並遍歷元素的資料型別。(若一種型別支援一組特定的操作(這些操作遍歷容器所有元素和訪問這些元素),就可稱為迭代器型別)
vector::iterator iter;
vector::iterator iter=ivec.begin(); //vector不為空,指向ivec[0]
vector::iterator iter=ivec.end(); //指向vector的末端的下乙個元素,若vectro為空,begin和end返回的迭代器相同
vector::const_iterator iter;
//該型別只能讀取容器內的元素,但是不能改變,*iter = 0是錯誤的
const vector::iterator iter = ivec.begin(); //迭代器必須初始化,但是++iter是錯誤的
這兩者乙個是指向的元素不能被改變,乙個是自己迭代器本身不能改變
for(vector::iterator iter = ivec.begin(); iter != ivec.end(); ++iter)
*iter = 0;
批量修改同一種控制項屬性
當乙個頁面中新增了許多同型別控制項,當需要控制這些控制項進行顯示或隱藏的時候,需要乙個個的將visible屬性設定為false,十分不方便,後通過論壇受一位大神 至於叫什麼忘了 的啟發,通過建立控制項陣列的方式可以實現同種控制項批量修改同一屬性。toolstripstatuslabel tlable...
超級實用的一種型別 匿名型別
既然說到匿名範例超等適用,得要找到場景來壓服一下,假如人人玩過php,外面有乙個全能的聯絡關係陣列array,任你在聯絡關係陣列array外面怎樣寫,均可以或許用json encode來天生json,異常異常的便利。看到如許的json是不是有一種很爽的感到?是的,確其實咱們開闢中異常的適用,那末成績...
油煙淨化器和抽油煙機是同一種裝置嗎?
在關於廚房油煙方面,對於不是從事餐飲行業的來說,很多人首先想到的就是抽油煙機,畢竟當今對於廚房環境和健康的重視,大部分家庭廚房都安裝了抽油煙機,但是很多人就疑惑了,抽油煙機和油煙淨化器是同一種裝置嗎?從理論上來說,油煙淨化器雖然可以經過一定的零部件改裝從而安裝在廚房,但是其本質上是和抽油煙機是有差別...