吴忠躺衫网络科技有限公司

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>C語言|源代碼>Google C++編程風格指南PDF版免費下載

Google C++編程風格指南PDF版免費下載

2019-03-06 | pdf | 0.71 MB | 次下載 | 免費

資料介紹

  Google的項目大多使用C++開發。每一個C++程序員也都知道, C++具有很多強大的語言特性,但這種強大不可避免的導致它的復雜,而復雜性會使得代碼更容易出現bug.難于閱讀和維護。

  本指南的目的是通過詳細闡述如何進行C+ +編碼來規避其復雜性,使得代碼在有效使用C+ +語言特性的同時還易于管理。

  使代碼易于管理的方法之一是增強代碼一 致性,讓別人可以讀懂你的代碼是很重要的,保持統-編程風格意味著可以輕松根據“模式匹配”規則推斷各種符號的含義。創建通用的、必需的習慣用語和模式可以使代碼更加容易理解在某些情況下改變一些編程風格可能會是好的選擇 但我們還是應該遵循一致性原則,盡量不這樣去做。

  本指南的另-一個觀點是C+ +特性的臃腫。C++是一門包含大量高級特性的巨型語言, 某些情況下,我們會限制甚至禁止使用某些特性使代碼簡化,避免可能導致的各種問題,指南中列舉了這類特性,并解釋說為什么這些特性是被限制使用的。

  注意:本指南并非C+ +教程,我們假定讀者已經對C+ +非常熟悉。

  頭文件

  通常,每一個.cc文件( C++的源文件)都有一個對應的h文件(頭文件),也有一些例外,如單元測試代碼和只包含main0的.cc文件。

  正確使用頭文件可令代碼在可讀性、文件大小和性能上大為改觀。

  下面的規則將引導你規避使用頭文件時的各種麻煩。

  2.頭文件依賴

  使用前置聲明( forward declarations )盡量減少h文件中#include的數量。

  當一個頭文件被包含的同時也引入了一項新的依賴( dependency ),只要該頭文件被修改,代碼就要重新編譯。如果你的頭文件包含了其他頭文件,這些頭文件的任何改變也將導致那些包含了你的頭文件的代碼重新編譯。因此,我們應該盡量少的包含頭文件,尤其是那些包含在其他頭文件中的。

  使用前置聲明可以顯著減少需要包含的頭文件數量。舉例說明:頭文件中用到類File ,但不需要訪問File的聲明,則頭文件中只需前置聲明class File;無需#include *file/base/ileh“。

  在頭文件如何做到使用類Foo而無需訪問類的定義?1)將數據成員類型聲明為Foo *或Foo & ;

  2)參數。返回值類型為Foo的函數只是聲明(但不定義實現);

  3)靜態數據成員的類型可以被聲明為Foo ,因為靜態數據成員的定義在類定義之外。

  另一方面,如果你的類是Foo的子類,或者含有類型為Foo的非靜態數據成員,則必須為之包含頭文件。

  有時,使用指針成員( pointer members ,如果是scoped. ptr更好)替代對象成員( object members )的確更有意義。然而,這樣的做法會降低代碼可讀性及執行效率。如果僅僅為了少包含頭文件,還是不要這樣替代的好。

  當然,.cc文件無論如何都需要所使用類的定義部分,自然也就會包含若干頭文件。

  注:能依賴聲明的就不要衣賴定義。

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1電子電路原理第七版PDF電子教材免費下載
  2. 0.00 MB  |  1490次下載  |  免費
  3. 2單片機典型實例介紹
  4. 18.19 MB  |  92次下載  |  1 積分
  5. 3S7-200PLC編程實例詳細資料
  6. 1.17 MB  |  27次下載  |  1 積分
  7. 4筆記本電腦主板的元件識別和講解說明
  8. 4.28 MB  |  18次下載  |  4 積分
  9. 5開關電源原理及各功能電路詳解
  10. 0.38 MB  |  10次下載  |  免費
  11. 6基于AT89C2051/4051單片機編程器的實驗
  12. 0.11 MB  |  4次下載  |  免費
  13. 7藍牙設備在嵌入式領域的廣泛應用
  14. 0.63 MB  |  3次下載  |  免費
  15. 89天練會電子電路識圖
  16. 5.91 MB  |  3次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234313次下載  |  免費
  3. 2PADS 9.0 2009最新版 -下載
  4. 0.00 MB  |  66304次下載  |  免費
  5. 3protel99下載protel99軟件下載(中文版)
  6. 0.00 MB  |  51209次下載  |  免費
  7. 4LabView 8.0 專業版下載 (3CD完整版)
  8. 0.00 MB  |  51043次下載  |  免費
  9. 5555集成電路應用800例(新編版)
  10. 0.00 MB  |  33562次下載  |  免費
  11. 6接口電路圖大全
  12. 未知  |  30320次下載  |  免費
  13. 7Multisim 10下載Multisim 10 中文版
  14. 0.00 MB  |  28588次下載  |  免費
  15. 8開關電源設計實例指南
  16. 未知  |  21539次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935053次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537791次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234313次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233045次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191183次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183277次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138039次下載  |  免費
娱乐城注册送18| 阜新| 伯爵百家乐官网赌场娱乐网规则 | 威尼斯人娱乐城地图| 瑞士百家乐官网的玩法技巧和规则 | 至尊百家乐官网娱乐| 百家乐怎样投注好| 百家乐官网9人桌布| 足球心水论坛| 金盾百家乐网址| 四子王旗| 富贵乐园棋牌游戏| 百家乐小九梭哈| 百家乐娱乐城反水| 金银岛百家乐官网的玩法技巧和规则 | 淘金百家乐的玩法技巧和规则| 娱乐百家乐官网下载| 百家乐官网有真假宝单吗| 太阳城网址| 申博太阳城官方网站| 百家乐平注常赢打法| 做生意风水摆件| 真人百家乐官网视频| 百家乐官网桌布动物| 百家乐官网送钱平台| 赌百家乐官网怎样能赢| 百家乐官网赢法口诀| 视频百家乐| 尊爵| 38坊| 乌兰察布市| 大发888网址开户| 大发888下载地址| 大发888备用网址大发娱乐城| 百家乐追号工具| 真钱百家乐游戏大全| 百家乐网址多少| 百家乐怎样玩才能赢| 百家乐棋牌公式| 百家乐投注技巧球讯网| 金沙百家乐娱乐城场|