stl庫容器vector at函式
v.at(n)返回v指定位置n的元素。at函式比運算子更加安全, 因為它不會讓你去訪問到越界的元素,一旦越界將會在執行時中止程式並丟擲乙個異常std::out_of_range
。
例如vectorv(10,0);
cout《這段**訪問了vector末尾以後的元素,這將可能導致很危險的結果,但系統不會報錯。
以下的**將更加安全:
vectorv(10,0);
cout《取代試圖訪問記憶體裡非法值的作法,at() 函式能夠辨別出訪問是否越界並在越界的時候中止程式。
STL標準庫 容器 forward list
forward list即單向list,功能少額外開銷就小.而且只能在前段插入元素 結構如下 一 定義 include int main int argc,const char ar return0 二 與迭代器的使用 由於forward list的迭代器內指向記憶體不連續 顧不能做迭代器 操作 i...
STL標準庫 容器 unordered set
unordered set與與unordered map相似,這次主要介紹unordered set unordered set它的實現基於hashtable,它的結構圖仍然可以用下圖表示,這時的空白格不在是單個value,而是set中的key與value的資料報 有unordered set就一定...
STL標準庫 容器介面卡
上一節介紹了仿函式介面卡,這節主要介紹容器介面卡和迭代器介面卡的概念,其實容器介面卡和迭代器其介面卡就是封裝了一些其他class的方法,非常好理解.如果你想讓乙個calss擁有另乙個class的功能,你都可以這樣做 1.繼承 2.包含 迭代器介面卡 運用繼承方式,實現適配功能,其實現與仿函式介面卡相...