《C++ Primer 第五版》(第1~6章总结)
1.C++采用標(biāo)準(zhǔn)庫文件iostream定義的兩個(gè)對象來實(shí)現(xiàn)IO機(jī)制。
2.代碼注釋應(yīng)解釋關(guān)鍵數(shù)據(jù)的變量含義和代碼完成了什么功能,力求簡潔易懂。
3.正確理解初始化和賦值,聲明和定義的含義?初始化是在定義對象的時(shí)候同時(shí)賦值,賦值是定義對象和賦值不在同一個(gè)時(shí)間段。聲明是向編譯器說明存在這樣一個(gè)名字,定義是聲明名字同時(shí)說明名字執(zhí)行的功能。
4.正確理解指針和引用的含義?指針是一個(gè)對象,引用是對象的別名。
5.要養(yǎng)成加const限制符的習(xí)慣。
6.使用using/typedef來定義類型別名,可以增加代碼的魯棒性和可移植性。
7.C++11提供auto和decltype來獲取對象的類型,其中decltype可以獲取引用的類型。
8.編寫程序過程中可以采用預(yù)處理功能來防止某些內(nèi)容被重復(fù)包含,具體格式為:#ifndef 預(yù)處理變量? 代碼段 #define 預(yù)處理變量 代碼段 #endif
9.C++在頭文件cctype(兼容C語言中的ctype.h)定義了一類判斷和處理字符的函數(shù),在頭文件cstring(兼容了C語言中的string.h)定義了一類比較和拷貝字符串的函數(shù)。
10.C++中只定義了“&&,||,?:,,”等四類運(yùn)算符的求值順序,對于其他運(yùn)算符和函數(shù)調(diào)用過程中,應(yīng)盡量避免因運(yùn)算符兩側(cè)的對象或函數(shù)實(shí)參對象之間有聯(lián)系而造成的程序二義性問題。
11.對于有符號數(shù)和無符號混合運(yùn)算的問題,如果無符號數(shù)>=有符號數(shù)或者有符號數(shù)類型范圍大于無符號數(shù),則將有符號數(shù)轉(zhuǎn)化為無符號數(shù)計(jì)算,否則將無符號數(shù)轉(zhuǎn)化為有符號數(shù)計(jì)算。
12.對于C++中規(guī)定的顯示類型轉(zhuǎn)換,static_cast替代了C中的全部強(qiáng)制類型轉(zhuǎn)換(不能解決底層const問題),而const_cast用于改變對象的底層const屬性問題。
13.運(yùn)算符的優(yōu)先級公式:“單算移關(guān)與,異或邏條賦”。
14.C++中定義了一套try-throw異常發(fā)現(xiàn)拋出,catch異常捕獲處理機(jī)制及一組標(biāo)準(zhǔn)異常類。
15.參數(shù)傳遞分為值傳遞和引用傳遞兩種方式。
16.C++提供initialize_list,可變參數(shù)模板,省略符來處理一類未知實(shí)參個(gè)數(shù)的函數(shù)問題。
17.C++提供直接聲明(用指針名代替數(shù)組名或函數(shù)名,記得加括號)、using/typedef類型別名,尾后返回類型和decltype(指向的 數(shù)組類型/函數(shù)聲明已知)的方法完成對數(shù)組/函數(shù)指針的聲明。
18.函數(shù)指針可以作為函數(shù)的形參,用于解決一類問題,可以增強(qiáng)代碼的魯棒性。
19.函數(shù)重載的條件是相同作用域、同名函數(shù)、不同參數(shù)列表。返回值和頂層const不能作為重載的判定依據(jù)。
20合理使用默認(rèn)形參(部分參數(shù)默認(rèn)已知)、inline函數(shù)(功能類似于宏替換)和constexpr函數(shù)(定義常量表達(dá)式)。
總結(jié)
以上是生活随笔為你收集整理的《C++ Primer 第五版》(第1~6章总结)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 成都大熊猫繁育研究基地学生票要学生证吗
- 下一篇: 使用touch更新文件的时间