1. 程式人生 > >string、vector、陣列小要點

string、vector、陣列小要點

·位於標頭檔案的程式碼,一般不使用using宣告,因為可能這個檔案包含了其它有using的檔案,可能造成名字衝突

·執行讀取操作時,string物件會自動忽略開頭的空白(即空格符、換行符、製表符等)並從第一個字元讀起,直到遇到下一處空白為止

·string的size()函式返回的是一個string::size_type型別,其它STL類的size()函式也是返回的對應的型別,保持了標準庫型別和機器無關的特性

·當把string物件用來操作時,需保證+號的兩側的運算物件至少有一個是string,如下面語句是錯誤的:string s7 = “hello”+”,”+s2;

·對於&&操作,c++語言規定只有當左側運算物件為真是才會檢查右側物件的情況

·vector可容納大多數型別的物件作為元素,但因為引用不是物件,所以不存在包含引用的vector

·在用迭代器進行範圍for迴圈的時候,所進行的操作不能改變所遍歷的大小

·vector不能用下標形式新增元素

·若vector和string物件是一個常量,則只能用const_iterator進行對應操作

·任何一個可能改變vector物件容量的操作,比如push_back,都會使該vector物件的迭代器失效

·最好從陣列名字開始按照由內向外的順序閱讀去理解陣列宣告的含義

·陣列下標通常定義為size_t型別,size_t是一個機器相關的無符號型別,它被設計得足夠大以便能表示記憶體中任意物件的大小