Bjarne Stroustrup(BS)博士在 The C++ Programming Language(Special Edition)中對讀者的忠告2(摘抄) (轉)
Bjarne Stroustrup(BS)博士在 The C++ Programming Language(Special Edition)中對讀者的忠告(摘抄)
:namespace prefix = o ns = "urn:schemas--com::office" />
第 4 章 型別和宣告
1. 保持較小的作用域。
2. 不要在一個作用域和它外圍的作用域裡採用同樣的名字。
3. 在一個宣告中只宣告一個名字。
4. 讓常用的和區域性的名字比較短,讓不常用的和全域性的名字比較長。
5. 避免看起來類似的名字。
6. 維持某種統一的命名風格。
7. 仔細選擇名字,反映其意義而不是反映實現方式。
8. 如果所用的內部型別表示某種可能變化的值,請用typedef 為它定義一個有意義的名字。
9. 用typedef為型別定義同義詞,用列舉或類去定義新型別。
10. 切記每個宣告中都必須描述一個型別(沒有“隱式的int”)。
11. 避免有關字元數值的不必要假設。
12. 避免有關整數大小的不必要假設。
13. 避免有關浮點型別表示範圍的不必要假設。
14. 優先使用普通的int 而不是short int 或者long int。
15. 優先使用double 而不是float 或者long double。
16. 優先使用普通的 char 而不是 signed char或者 unsigned char。
17. 避免做出有關大小的不必要假設。
18. 避免無符號算術。
19. 應該帶著疑問去看待從signed 到unsigned ,或者從unsigned 到signed 的轉換。
20. 應該帶著疑問去看待從浮點到整型的轉換。
21. 應該帶著疑問去看待向較小型別的轉換,如將int轉換到char。
第 5 章
1. 避免非平凡的指標算術。
2. 當心,不要超出陣列的界線去寫。
3. 儘量使用0而不是NULL。
4. 儘量使用vector 和valarray ,而不是內部(C風格)的陣列。
5. 儘量使用string而不是以0結尾的char 陣列。
6. 儘量少用普通的引用引數。
7. 避免 void*,除了在某些低階程式碼裡。
8. 避免在程式碼中使用非平凡的文字量(“神秘的數”)。相反,應該定義和使用各種符號常量。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752019/viewspace-977164/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Bjarne Stroustrup(BS)博士在 The C++ Programming Language(Special Edition)中對讀者的忠告1(摘抄) (轉)JARC++
- The C++ Programming Language, 4th Edition出版了C++
- Bjarne Stroustrup:概觀C++程式設計語言 (轉)JARC++程式設計
- Bjarne Stroustrup 語錄JAR
- Bjarne Stroustrup的 C++ 風格與技術常見問題與答案(轉)JARC++
- Bjarne Stroustrup的 C++ 風格與技術常見問題與答案 (節譯一) (轉)JARC++
- 掀起C++0x的蓋頭來:C++之父Bjarne Stroustrup訪談C++JAR
- C++之父Bjarne談C++在2005年(轉)C++JAR
- C++之父Bjarne Stroustrup訪談問題有獎徵集(圖靈訪談)C++JAR圖靈
- 思考c++程式設計-譯自c++ programming language 1.7節 (轉)C++程式設計
- C++之父Bjarne Stroustrup: 簡單的表述方式才是最優的方案(圖靈訪談)C++JAR圖靈
- Programming Java 2 Micro Edition for Symbian OSJava
- Java Language Features, 2nd Edition.pdfJava
- RBE104TC C/C++ Programming LanguageC++
- 【讀書筆記】The Swift Programming Language (Swift 4.0.3)筆記Swift
- The Go Programming LanguageGo
- the java programming languageJava
- C++之父B. Stroustrup近期言論 (轉)C++
- 死磕The Swift Programming Language——學Swift
- golang programming language study methods websocketGolangWeb
- The Swift Programming Language 中文版Swift
- 《The Rust Programming language》程式碼練習(part 2 進階部分)Rust
- 想入門者請近.[翻譯]what programming language should I learn?
- [譯]《The Swift Programming Language》2 0版之自動引用計數Swift
- v2 special code
- Bjarne Stroustrup: A simple way of expressing an idea can be optimal in real-world situations(圖靈訪談)JARExpressIdea圖靈
- C++中的檔案輸入/輸出(2):讀取檔案 (轉)C++
- Advanced Programming in the UNIX Environment, 3rd Edition出版
- c++初學者的50個忠告C++
- 對Java初學者的忠告Java
- File Protector 2000 v2.02 Special Edition documentation (7千字)
- 1901:The C programming language !(C語言)C語言
- 《The Swift Programming Language》中文版翻譯完成Swift
- 2016/08/24 CppCon 2015 Bjarne Stroustrup “Writing Good C++14"JARGoC++
- C++ Programming Error/Warning Analysis (2) extra qualificationC++Error
- 給C++初學者的50個忠告C++
- 對Win XP系統的超級管理員安全忠告(轉)
- 介面在託管C++中的應用 (轉)C++