string型別
1.定義和初始化string型別的一種新方法:
string s4(10,'c');
2.string型別的一行讀入:
getline(cin,s)
//return cin,換行符也被讀入,但不被存入
3.string的size用法:
因為string的size函式返回的是乙個
string::size_type型別的值,所以我們一般這麼寫
auto length=s.
size();
4.literal和string的加法:
編譯器會把literal自動轉化成string,前提是加法的兩邊至少有乙個string型別。因為歷史原因,字串literal和string是兩種不同的型別。
string s="abc"+'\n';//錯誤!
5.新方法:基於範圍的for語句(range for)//注意如果要修改字串的值要使用引用形式
for(auto c :str)
expression...;
6.使用索引訪問字串某個字元注意事項:
索引必須是string::string_type型別,換而言之,必須是無符號整形。一般這麼寫:
for(decltype(s.size()) index=0;index
expression...;
vector型別
1.vector型別並不是類(class),而是乙個類模板(class template)。編譯器根據模板建立類或者函式的過程叫做例項化(instantiation).
2.vector能容納絕大多數型別的物件作為其元素,但是不包括引用,因為引用不是物件。
3.在寫vector型別的vector時,一般這麼寫:
vecor >//c++11標準允許了寫在一起,但最好還是這麼寫
4.vector的定義和初始化 文字查詢程式(C primer5th)
書上的乙個比較簡單的例題,可以輸出文字中單詞總共出現的次數,所在的行數及所在行的內容。主要的思路是建立乙個vector來分行儲存文字,然後將單詞及單詞出現行數 set 建立乙個map。通過查詢單詞獲得其對映的set。set的size為出現的次數,set的元素為出現的行數,通過set元素作為vecto...
C Primer 5th學習筆記4 異常語句
c 語言中,異常處理包括以下幾種 try語句的通用語法形式是 try catch exception declaration catch exception declaration c 標準庫中定義了一組類,用於報告標準庫函式遇到的問題。這些類分別定義在以下四個標頭檔案中 exception 最常見...
C Primer 5th學習筆記3 表示式
運算子 功能描述 一元正號 expr 一元負號 expr 乘法 expr expr 除法 expr expr 求餘 expr expr 加法 expr expr 減法 expr expr 上述運算子的優先順序中,由上往下,一元運算子優先順序最高,其次是乘除運算,最後是加減運算,所有的運算子都滿足左結...