青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Creative Commons License
本Blog采用 知識共享署名-非商業性使用-禁止演繹 3.0 Unported許可協議 進行許可。 —— Fox <游戲人生>

游戲人生

游戲人生 != ( 人生 == 游戲 )
站點遷移至:http://www.yulefox.com。請訂閱本博的朋友將RSS修改為http://feeds.feedburner.com/yulefox
posts - 62, comments - 508, trackbacks - 0, articles - 7

[譯]Google C++編程風格指南(八)[完]

Posted on 2008-07-23 14:28 Fox 閱讀(3853) 評論(11)  編輯 收藏 引用 所屬分類: T技術碎語

原文地址:

  • 規則之例外

前面說明的編碼習慣基本是強制性的,但所有優秀的規則都允許例外。

1. 現有不統一代碼(Existing Non-conformant Code)

對于現有不符合既定編程風格的代碼可以網開一面。

當你修改使用其他風格的代碼時,為了與代碼原有風格保持一致可以不使用本指南約定。如果不放心可以與代碼原作者或現在的負責人員商討,記住,一致性包括原有的一致性。

1. Windows代碼(Windows Code)

Windows程序員有自己的編碼習慣,主要源于Windows的一些頭文件和其他Microsoft代碼。我們希望任何人都可以順利讀懂你的代碼,所以針對所有平臺的C++編碼給出一個單獨的指導方案。

如果你一直使用Windows編碼風格的,這兒有必要重申一下某些你可能會忘記的指南(譯者注,我怎么感覺像在被洗腦:D)

1) 不要使用匈牙利命名法(Hungarian notation,如定義整型變量為iNum,使用Google命名約定,包括對源文件使用.cc擴展名;

2) Windows定義了很多原有內建類型的同義詞(譯者注,這一點,我也很反感),如DWORD、HANDLE等等,在調用Windows API時這是完全可以接受甚至鼓勵的,但還是盡量使用原來的C++類型,例如,使用const TCHAR *而不是LPCTSTR;

3) 使用Microsoft Visual C++進行編譯時,將警告級別設置為3或更高,并將所有warnings當作errors處理;

4) 不要使用#pragma once;作為包含保護,使用C++標準包含保護,包含保護的文件路徑包含到項目樹頂層(譯者注,#include<prj_name/public/tools.h>;

5) 除非萬不得已,否則不使用任何不標準的擴展,如#pragma__declspec,允許使用__declspec(dllimport)__declspec(dllexport),但必須通過DLLIMPORTDLLEXPORT等宏,以便其他人在共享使用這些代碼時容易放棄這些擴展。

在Windows上,只有很少一些偶爾可以不遵守的規則:

1) 通常我們禁止使用多重繼承,但在使用COMATL/WTL類時可以使用多重繼承,為了執行COMATL/WTL類及其接口時可以使用多重實現繼承;

2) 雖然代碼中不應使用異常,但在ATL和部分STL(包括Visual C++的STL)中異常被廣泛使用,使用ATL時,應定義_ATL_NO_EXCEPTIONS以屏蔽異常,你要研究一下是否也屏蔽掉STL的異常,如果不屏蔽,開啟編譯器異常也可以,注意這只是為了編譯STL,自己仍然不要寫含異常處理的代碼;

3) 通常每個項目的每個源文件中都包含一個名為StdAfx.hprecompile.h的頭文件方便頭文件預編譯,為了使代碼方便與其他項目共享,避免顯式包含此文件(precompile.cc除外),使用編譯器選項/FI以自動包含;

4) 通常名為resource.h、且只包含宏的資源頭文件,不必拘泥于此風格指南。

  • 團隊合作

參考常識,保持一致。

編輯代碼時,花點時間看看項目中的其他代碼并確定其風格,如果其他代碼if語句中使用空格,那么你也要使用。如果其中的注釋用星號(*)圍成一個盒子狀,你也這樣做:

/**********************************
* Some comments are here.
* There may be many lines.
**********************************/

編程風格指南的使用要點在于提供一個公共的編碼規范,所有人可以把精力集中在實現內容而不是表現形式上。我們給出了全局的風格規范,但局部的風格也很重要,如果你在一個文件中新加的代碼和原有代碼風格相去甚遠的話,這就破壞了文件本身的整體美觀也影響閱讀,所以要盡量避免。

好了,關于編碼風格寫的差不多了,代碼本身才是更有趣的,盡情享受吧!

Benjy Weinberger
Craig Silverstein
Gregory Eitzmann
Mark Mentovai
Tashana Landray

______________________________________

譯者:終于翻完了,前后歷時兩周,整個過程中,雖因工作關系偶有懈怠,但總算不是虎頭蛇尾(起碼我的態度是非常認真的:D),無論是否能對你有所裨益,對我而言,至少是溫習了一些以前知道的知識,也學到了一些之前不知道的知識。

剛好這兩天還不是特緊張,趕緊翻完了,要開始干活了……

Feedback

# re: [譯]Google C++編程風格指南(八)[完]  回復  更多評論   

2008-07-23 15:31 by 儒客小子
學到了不少,不過一直用MSVC,里面是有不一樣的
辛苦了

# re: [譯]Google C++編程風格指南(八)[完]  回復  更多評論   

2008-07-23 17:32 by 逖靖寒
辛苦了

# re: [譯]Google C++編程風格指南(八)[完]  回復  更多評論   

2008-07-23 19:06 by Alienfeel
辛苦了?。?br>
全部加為收藏,贊啊

# re: [譯]Google C++編程風格指南(八)[完]  回復  更多評論   

2008-07-24 00:23 by 空明流轉的臨時馬甲
翻譯的不錯。

# re: [譯]Google C++編程風格指南(八)[完]  回復  更多評論   

2008-07-24 10:44 by 炮灰九段
好人!

# re: [譯]Google C++編程風格指南(八)[完]  回復  更多評論   

2008-07-24 12:53 by HuuYuu
Good job.

# re: [譯]Google C++編程風格指南(八)[完]  回復  更多評論   

2008-07-24 22:19 by cexer
博主辛苦了,一直在追著看,在尋找這樣一種標準。

# re: [譯]Google C++編程風格指南(八)[完]  回復  更多評論   

2008-07-28 20:54 by hjbai
Great job. Thanks! :)

# re: [譯]Google C++編程風格指南(八)[完]  回復  更多評論   

2008-08-20 13:30 by caicai
謝謝博主

# re: [譯]Google C++編程風格指南(八)[完]  回復  更多評論   

2008-08-27 20:37 by 大壯
謝謝博主

# re: [譯]Google C++編程風格指南(八)[完]  回復  更多評論   

2008-10-04 13:59 by lily
"使用const TCHAR *而不是LPCTSTR;"

規則說的對,例子似乎不對, TCHAR 是windows 自己定義的,不符合ansi c 規范,就和所謂CHAR 一樣. 符合規范的是_TCHAR. ansi 的東西對于一些衍生產品喜歡開頭加 _ .

正確說法:
使用 const _TCHAR * 而不是 LPCTSTR

thanks for writing

EOF
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久蜜桃资源一区二区老牛| 欧美精品久久久久久久| 99riav久久精品riav| 国产免费亚洲高清| 国产欧美1区2区3区| 国产精品毛片一区二区三区| 国产精品婷婷| 国产在线精品二区| 在线日韩成人| 99re热这里只有精品免费视频| 一本色道久久88亚洲综合88| 亚洲男人的天堂在线aⅴ视频| 亚洲欧美视频在线| 久久久噜久噜久久综合| 欧美va日韩va| 亚洲精品乱码久久久久| 亚洲欧洲精品一区二区三区 | 欧美激情视频在线播放| 91久久中文字幕| 亚洲主播在线| 久久精品导航| 欧美日韩亚洲国产一区| 国产亚洲一区二区三区在线播放| 在线看国产一区| 亚洲永久免费观看| 欧美成人午夜影院| 亚洲一区二区三区免费观看| 久久综合福利| 国产欧美精品在线播放| 最近中文字幕日韩精品 | 蜜桃精品久久久久久久免费影院| 欧美精品色综合| 国产在线国偷精品产拍免费yy| 亚洲乱码视频| 久久久亚洲精品一区二区三区| 亚洲肉体裸体xxxx137| 性欧美1819性猛交| 欧美午夜精品一区二区三区| 在线精品一区二区| 久久黄金**| 亚洲午夜激情网页| 欧美精品成人一区二区在线观看| 国产一区二区你懂的| 亚洲一区综合| 亚洲国产你懂的| 久久久精品2019中文字幕神马| 国产精品久久久久久久久免费 | 一区二区动漫| 欧美第一黄网免费网站| 激情成人在线视频| 久久精品五月婷婷| 亚洲欧洲日韩综合二区| 国产欧美精品在线播放| 一区二区三区欧美在线| 欧美凹凸一区二区三区视频| 亚洲欧美成人网| 国产精品第一页第二页第三页| 亚洲黄色在线| 欧美国产精品中文字幕| 久久久噜久噜久久综合| 好看不卡的中文字幕| 欧美一区二区三区男人的天堂| 一本大道久久a久久精品综合 | 99国产精品视频免费观看| 六月天综合网| 亚洲青涩在线| 亚洲精品一区二| 欧美日韩理论| 香蕉久久夜色精品| 午夜在线一区二区| 极品少妇一区二区三区| 欧美高清在线观看| 免费在线亚洲| 日韩视频永久免费| 中日韩美女免费视频网址在线观看| 欧美视频日韩视频| 欧美一区二区性| 久久久午夜精品| 亚洲经典自拍| 99精品国产高清一区二区| 国产精品毛片va一区二区三区| 欧美专区日韩视频| 久久久久久久久久久成人| 91久久精品一区二区三区| 亚洲精品在线视频| 国产精品女同互慰在线看| 久久国产一区二区| 嫩模写真一区二区三区三州| 一本久久a久久免费精品不卡| 99视频热这里只有精品免费| 国产欧美视频一区二区| 免费在线播放第一区高清av| 欧美破处大片在线视频| 欧美一区在线直播| 欧美成人精品高清在线播放| 亚洲午夜免费福利视频| 午夜亚洲视频| 99精品热视频| 久久国产一区二区| 在线综合视频| 久久免费国产| 午夜精品在线| 另类酷文…触手系列精品集v1小说| 中文在线资源观看网站视频免费不卡 | 久久精品中文| 亚洲午夜精品一区二区| 久久久久五月天| 国产麻豆视频精品| 国产一区视频观看| 欧美激情久久久| 欧美日韩国产小视频在线观看| 西瓜成人精品人成网站| 男人天堂欧美日韩| 久久久久亚洲综合| 欧美丝袜一区二区三区| 欧美激情视频在线播放| 国产一区二区三区精品久久久| 亚洲精品一区二| 亚洲激情午夜| 久久久久国产精品麻豆ai换脸| 亚洲小视频在线观看| 欧美11—12娇小xxxx| 美女国产精品| 国产综合久久| 午夜欧美精品久久久久久久| 夜久久久久久| 欧美成人一区二区三区| 老司机亚洲精品| 国产一区二区三区精品久久久| 亚洲一区二区少妇| 亚洲欧美精品suv| 国产精品成人aaaaa网站 | 亚洲一区国产| 亚洲一区二区三区四区中文| 欧美经典一区二区| 亚洲国产婷婷综合在线精品| 亚洲国产精品黑人久久久| 久久久久se| 免费成人黄色片| 亚洲国产精品一区二区www在线| 亚洲男人天堂2024| 午夜视频一区在线观看| 国产精品xnxxcom| 亚洲香蕉伊综合在人在线视看| 亚洲影视中文字幕| 国产精品日韩一区二区三区| 亚洲自拍16p| 久久精品中文字幕一区| 国产伊人精品| 免播放器亚洲一区| 亚洲激情在线激情| 亚洲视频在线观看| 国产精品乱子久久久久| 午夜精品理论片| 蜜臀va亚洲va欧美va天堂| 亚洲国产第一页| 欧美精品一区二区三区蜜桃| 夜夜嗨av色一区二区不卡| 亚洲欧美中文日韩v在线观看| 国产精品网曝门| 久久久精品一品道一区| 亚洲日本理论电影| 午夜精品久久久久久久白皮肤| 国产亚洲欧美一区在线观看| 久久人人爽人人爽爽久久| 欧美黄色视屏| 亚洲永久免费精品| 影音先锋亚洲一区| 欧美精品一区在线播放| 亚洲欧美日韩精品| 欧美国产极速在线| 亚洲欧美日韩国产中文在线| 国产一区二区日韩精品| 欧美精品日韩三级| 午夜亚洲伦理| 日韩视频一区二区三区| 久久激情综合网| 欧美成人资源网| 欧美三级中文字幕在线观看| 亚洲欧美日本日韩| 亚洲国产视频一区二区| 亚洲欧美影院| 亚洲激情在线观看视频免费| 国产精品成人v| 美女被久久久| 亚洲欧美日韩国产| 91久久精品国产91久久| 久久精品中文| 亚洲自拍都市欧美小说| 亚洲成人直播| 国产麻豆精品久久一二三| 男人插女人欧美| 亚洲女性喷水在线观看一区| 亚洲欧洲日产国产综合网| 久久免费精品视频| 亚洲自啪免费| 国产精品99久久久久久www| 在线观看成人网| 国产亚洲欧美日韩精品| 国产精品国产馆在线真实露脸|