青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
金慶的專欄
C++博客
::
首頁
::
新隨筆
::
聯系
::
聚合
::
管理
::
423 隨筆 :: 0 文章 :: 454 評論 :: 0 Trackbacks
公告
我的隨筆
我的評論
我參與的隨筆
留言簿
(12)
給我留言
查看公開留言
查看私人留言
隨筆分類
(502)
1. C/C++(166)
(rss)
2. 網游開發(108)
(rss)
3. Golang(20)
(rss)
4. Linux/Unix(30)
(rss)
5. 軟工與管理(44)
(rss)
6. Python(23)
(rss)
7. Erlang(18)
(rss)
8. Rust(16)
(rss)
9. 其它(77)
(rss)
隨筆檔案
(423)
2023年1月 (1)
2022年11月 (1)
2022年10月 (2)
2022年9月 (1)
2022年4月 (6)
2022年1月 (2)
2021年12月 (4)
2021年11月 (6)
2021年10月 (2)
2021年9月 (2)
2021年8月 (7)
2021年7月 (2)
2021年5月 (2)
2021年3月 (1)
2021年2月 (2)
2021年1月 (1)
2020年12月 (1)
2020年10月 (1)
2020年9月 (5)
2020年8月 (1)
2020年7月 (1)
2020年6月 (1)
2020年4月 (2)
2020年3月 (3)
2020年2月 (3)
2020年1月 (1)
2019年12月 (1)
2019年9月 (2)
2019年4月 (2)
2019年1月 (1)
2018年12月 (1)
2018年11月 (3)
2018年10月 (1)
2018年9月 (3)
2018年8月 (3)
2018年7月 (2)
2018年6月 (4)
2018年5月 (4)
2018年4月 (4)
2018年3月 (1)
2018年1月 (2)
2017年12月 (2)
2017年11月 (3)
2017年10月 (3)
2017年8月 (7)
2017年7月 (1)
2017年6月 (1)
2017年5月 (3)
2017年4月 (3)
2017年3月 (3)
2017年2月 (2)
2017年1月 (2)
2016年12月 (5)
2016年11月 (2)
2016年10月 (2)
2016年9月 (1)
2016年8月 (6)
2016年7月 (3)
2016年6月 (2)
2016年5月 (4)
2016年4月 (2)
2016年3月 (2)
2016年1月 (3)
2015年12月 (2)
2015年11月 (2)
2015年10月 (1)
2015年8月 (2)
2015年7月 (1)
2015年6月 (1)
2015年5月 (4)
2015年4月 (3)
2015年3月 (4)
2015年2月 (5)
2015年1月 (4)
2014年12月 (3)
2014年11月 (3)
2014年10月 (2)
2014年9月 (3)
2014年8月 (1)
2014年4月 (4)
2014年3月 (1)
2014年2月 (4)
2014年1月 (5)
2013年12月 (5)
2013年11月 (5)
2013年9月 (2)
2013年8月 (2)
2013年7月 (2)
2013年6月 (2)
2013年5月 (1)
2013年1月 (2)
2012年12月 (1)
2012年11月 (1)
2012年9月 (1)
2012年8月 (3)
2012年7月 (2)
2012年6月 (1)
2012年4月 (3)
2012年3月 (2)
2012年2月 (3)
2012年1月 (2)
2011年11月 (2)
2011年10月 (3)
2011年9月 (2)
2011年8月 (2)
2011年7月 (3)
2011年6月 (2)
2011年5月 (3)
2011年1月 (2)
2010年12月 (1)
2010年11月 (2)
2010年10月 (2)
2010年9月 (3)
2010年8月 (2)
2010年7月 (3)
2010年6月 (1)
2010年5月 (3)
2010年4月 (3)
2010年3月 (5)
2010年2月 (4)
2010年1月 (4)
2009年12月 (2)
2009年11月 (3)
2009年10月 (4)
2009年9月 (3)
2009年8月 (2)
2009年7月 (4)
2009年6月 (1)
2009年5月 (3)
2009年4月 (4)
2009年3月 (2)
2009年2月 (5)
2009年1月 (1)
2008年12月 (7)
2008年11月 (4)
2008年10月 (1)
2008年9月 (3)
2008年8月 (4)
2008年7月 (3)
2008年6月 (4)
2008年5月 (6)
2008年4月 (7)
2008年3月 (6)
2008年1月 (5)
2007年12月 (7)
2007年11月 (4)
2007年10月 (5)
2007年9月 (6)
2007年8月 (8)
2007年7月 (5)
相冊
公告照片
搜索
積分與排名
積分 - 660016
排名 - 25
最新評論
1.?re: boost::asio::spawn 將一統C++網絡庫
asio 成為C++首選網絡庫
--linda
2.?re: log4cxx中文輸出錯誤補丁
評論內容較長,點擊標題查看
--金慶
3.?re: mingw編譯OrzNet
能發送一個mingw編譯好的OrzNet庫給我嗎? liuweiqcxy@163.com
謝謝!
--劉威
4.?re: log4cxx中文輸出錯誤補丁
評論內容較長,點擊標題查看
--bigbad
5.?re: log4cxx中文輸出錯誤補丁
評論內容較長,點擊標題查看
--bigbad
閱讀排行榜
1.?"multiple definition of" 錯誤(11061)
2.?SVN中邪惡的replace(10986)
3.?VS2005編譯libevent(10434)
4.?混音算法的學習與研究(10239)
5.?C調用lua腳本的效率測試(9020)
評論排行榜
1.?VC6正在被拋棄(35)
2.?VS2005編譯libevent(21)
3.?"multiple definition of" 錯誤(18)
4.?C++引用優于指針(17)
5.?ACE與ASIO之間關于Socket編程的比較(16)
模板參數名命名慣例
模板參數名命名慣例
以下模板參數名命名慣例來自于stlsoft,詳細說明于《Extended STL》。
模板參數一般是一個或者兩個大寫字母,
例如T(type/value-type)、S(sequence/string)、
C(container/character)、VP(value policy type)等等。
這樣做有兩個原因。
首先,全大寫字母的單詞可能被宏定義。
相反,宏定義一般不會僅有一個或兩個字符。
所以模板參數和宏定義沒有命名沖突。
(我們不應該自定義特別短的宏。
如果一個庫定義了一兩個字符的短宏,
一般來說,它絕不會是一個可靠的庫。)
第二,我們將在類中定義成員類型,其名字必須不同于模板參數名。
以下代碼中,成員類型和模板參數同名,無法通過編譯:
template <typename iterator>
struct thing
{
typedef iterator iterator; // Compile error
};
必須如下代碼更改:
template <typename I>
struct thing
{
typedef I iterator;
};
在定義模板類時,有一個慣例,
即一開始就以上面短小的模板參數名為基礎,
定義各個成員類型。
查看StlPort代碼:
template <class _Key, class _Tp, ...>
class map
{
typedef map<_Key, _Tp, _Compare, _Alloc> _Self;
public:
typedef _Key key_type;
typedef _Tp data_type;
typedef _Tp mapped_type;
typedef pair<const _Key, _Tp> value_type;
typedef _Compare key_compare;
...
}
其模板參數命名的原則是一致的:較短,然后立即定義較長的類型名。
用前導下劃線防止命名沖突。
(轉載請注明來源于金慶的專欄)
posted on 2008-04-21 17:25
金慶
閱讀(2202)
評論(10)
編輯
收藏
引用
所屬分類:
1. C/C++
評論
#
re: 模板參數名命名慣例
2008-04-21 19:34
踏雪赤兔
沒必要為你那些過時的宏定義搞成這樣吧,這樣嚴重地損害了代碼可讀性。
P.S.:與其參考stlsoft,還不如參考SGI STL更好吧,這也是侯捷的選擇
回復
更多評論
#
re: 模板參數名命名慣例
2008-04-21 19:56
王曉軒
同意樓上的,SGI 的STL實現可以說是可讀性最好的~~
回復
更多評論
#
re: 模板參數名命名慣例
2008-04-21 22:12
Wang Feng
說起宏定義,其實在文件前面定義,用完了之后在文件最后取消是個很好的習慣
比如
#define PI 3.1415926535897932384626433
.....
#undef PI
回復
更多評論
#
re: 模板參數名命名慣例
2008-04-22 08:38
Kevin Lynx
原來模板中會優先使用宏。
說實話,作為開源fans,我有點看不慣“(轉載請注明來源于金慶的專欄)”這句話。個人感受。
回復
更多評論
#
re: 模板參數名命名慣例
2008-04-22 09:38
金慶
@踏雪赤兔
SGI STL與StlPort的代碼是很相似的,如上述map的定義幾乎一樣,只是stlport多了些對平臺的判斷,移植性好點。應該不算“嚴重地損害了代碼可讀性”。
回復
更多評論
#
re: 模板參數名命名慣例
2008-04-22 09:43
金慶
@Wang Feng
取消宏定義是一種方法,這樣該宏只能用于當前文件。
回復
更多評論
#
re: 模板參數名命名慣例
2008-04-22 09:52
金慶
@Kevin Lynx
我的觀點是,開源需要亮出自己的名號.
"轉載請注明來源于金慶的專欄"是為了方便讀者找到原文出處.
回復
更多評論
#
re: 模板參數名命名慣例
2008-04-22 13:19
eXile
我覺得作為開源的fans,應該更加注重版權的意識。
回復
更多評論
#
re: 模板參數名命名慣例
2008-04-23 09:08
Kevin Lynx
@金慶
這樣的話我還是很贊同的。
回復
更多評論
#
re: 模板參數名命名慣例
2008-04-25 17:22
#Ant
SGI STL的可讀性還是最好的,Wang Feng說的那種宏定義方法也是boost庫里面經常用的。
回復
更多評論
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
【推薦】100%開源!大型工業跨平臺軟件C++源碼提供,建模,組態!
相關文章:
How are dtLinks created in NavMesh
C++ parameter passing rules
Naming Conventions for Accessors
Visual Studio 2019 Compiler Hangs
Fbx File Format Identifier
查找內存錯誤
std::thread 中的異常會丟失調用棧
用賦值代替 protobuf CopyFrom()
vs2017 linux 編譯輸出改成 vs 格式
為 LiteIDE 添加選中標記
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Powered by:
C++博客
Copyright © 金慶
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
欧美激情久久久
|
午夜国产精品视频免费体验区
|
亚洲一区二区三区高清
|
欧美三日本三级三级在线播放
|
国产精品稀缺呦系列在线
|
亚洲一区二区黄色
|
一本色道久久综合
|
国产欧美一区视频
|
久久久欧美一区二区
|
久久综合精品一区
|
亚洲欧洲在线视频
|
亚洲人成在线播放
|
久久综合九色综合欧美狠狠
|
亚洲高清在线播放
|
免费观看成人www动漫视频
|
久久久久久高潮国产精品视
|
伊人春色精品
|
亚洲精品中文字幕女同
|
国产精品久久网
|
久久深夜福利免费观看
|
女人香蕉久久**毛片精品
|
亚洲图片在线
|
欧美在线一二三四区
|
亚洲日本免费电影
|
亚洲无线视频
|
尤物99国产成人精品视频
|
最新国产の精品合集bt伙计
|
国产精品欧美日韩久久
|
欧美成人小视频
|
欧美日韩在线大尺度
|
久久国产婷婷国产香蕉
|
欧美xx69
|
欧美中文字幕不卡
|
欧美不卡在线
|
久久精品国产清自在天天线
|
欧美精品午夜视频
|
久久乐国产精品
|
欧美三级日韩三级国产三级
|
久久这里只有精品视频首页
|
欧美日韩精品久久
|
久久精品国产清自在天天线
|
国产欧美精品国产国产专区
|
亚洲国产欧美不卡在线观看
|
国产日产欧产精品推荐色
|
亚洲高清久久久
|
国产欧美日韩综合一区在线播放
|
欧美日韩1080p
|
久久夜色精品国产
|
国产精品美女999
|
亚洲激情在线观看
|
在线观看成人网
|
亚洲欧美精品中文字幕在线
|
日韩一级裸体免费视频
|
久久青草久久
|
久久不射电影网
|
国产精品第一区
|
亚洲精品免费一区二区三区
|
亚洲国产精品黑人久久久
|
欧美一级理论性理论a
|
亚洲欧美另类久久久精品2019
|
欧美大片18
|
欧美高清视频免费观看
|
狠狠色伊人亚洲综合成人
|
亚洲综合三区
|
小处雏高清一区二区三区
|
欧美日韩精品一区二区三区四区
|
亚洲国产va精品久久久不卡综合
|
激情久久久久
|
久久久噜噜噜久噜久久
|
久久久人成影片一区二区三区
|
国产精品一区二区久久国产
|
在线综合亚洲
|
亚洲一级在线
|
国产精品久久久久永久免费观看
|
欧美在线观看视频
|
久久精品在线
|
狠狠v欧美v日韩v亚洲ⅴ
|
久久国产精品99国产
|
久久成人在线
|
韩国亚洲精品
|
麻豆国产精品777777在线
|
欧美99在线视频观看
|
亚洲国产日韩美
|
欧美激情日韩
|
在线亚洲观看
|
久久精品视频99
|
伊人成人在线
|
欧美日本高清一区
|
亚洲图片在线观看
|
久久午夜精品一区二区
|
亚洲国产三级在线
|
欧美天堂亚洲电影院在线播放
|
亚洲午夜久久久久久尤物
|
久久激情婷婷
|
91久久在线
|
国产精品第三页
|
久久久久这里只有精品
|
亚洲国产综合在线看不卡
|
亚洲欧美另类在线
|
在线成人www免费观看视频
|
欧美激情精品久久久久久免费印度
|
久久躁狠狠躁夜夜爽
|
国产亚洲精品久久久
|
久久久青草青青国产亚洲免观
|
欧美不卡一区
|
亚洲欧美日韩国产综合
|
国内偷自视频区视频综合
|
欧美高清影院
|
欧美一二三视频
|
亚洲福利久久
|
小嫩嫩精品导航
|
亚洲欧洲一区二区三区
|
国产精品乱子久久久久
|
久久亚洲综合网
|
亚洲在线不卡
|
亚洲精美视频
|
久久免费视频网站
|
一区二区精品
|
亚洲高清成人
|
国产视频不卡
|
欧美日韩亚洲在线
|
久久只有精品
|
欧美在线观看一区二区三区
|
夜夜夜精品看看
|
欧美福利视频网站
|
久久久综合网站
|
销魂美女一区二区三区视频在线
|
99re亚洲国产精品
|
尤物九九久久国产精品的特点
|
欧美麻豆久久久久久中文
|
欧美在线看片
|
亚洲午夜伦理
|
夜夜夜久久久
|
亚洲伦理中文字幕
|
亚洲大片在线
|
亚洲第一狼人社区
|
乱中年女人伦av一区二区
|
亚洲自啪免费
|
亚洲视频网站在线观看
|
亚洲精品一区二区三区四区高清
|
黄色成人av在线
|
国产亚洲精品久久飘花
|
蜜臀av性久久久久蜜臀aⅴ
|
午夜精品久久一牛影视
|
亚洲一区免费网站
|
亚洲三级免费电影
|
亚洲人久久久
|
亚洲精品老司机
|
欧美大片91
|
老司机免费视频久久
|
美腿丝袜亚洲色图
|
狼人天天伊人久久
|
牛夜精品久久久久久久99黑人
|
老鸭窝亚洲一区二区三区
|
麻豆精品一区二区综合av
|
狂野欧美激情性xxxx
|
麻豆成人综合网
|
欧美激情亚洲另类
|
亚洲国产毛片完整版
|
亚洲国产精品电影
|
亚洲精品久久久久久久久久久久
|
日韩午夜在线播放
|
亚洲视频在线播放
|
欧美一区二区三区免费视
|
久久激情婷婷
|
久久综合九色九九
|
欧美日本亚洲
|
国产精品一区毛片
|
好看的av在线不卡观看
|
亚洲啪啪91
|
日韩午夜在线
|
亚洲欧美精品在线观看
|
久久不射中文字幕
|
欧美国产高潮xxxx1819
|
欧美日韩精品综合
|
国产三级欧美三级日产三级99
|
精品成人国产
|
日韩一级在线观看
|
欧美夜福利tv在线
|
另类欧美日韩国产在线
|
亚洲国产精品综合
|
欧美一区二区三区四区在线
|
免费亚洲电影在线
|
国产精品欧美久久久久无广告
|
精品二区视频
|
亚洲一区在线观看免费观看电影高清
|
开心色5月久久精品
|
欧美三级在线
|
一区在线免费
|
亚洲免费视频在线观看
|
另类酷文…触手系列精品集v1小说
|
亚洲精品在线一区二区
|
久久久五月婷婷
|
国产伦精品一区二区三
|
99视频在线观看一区三区
|
久久人体大胆视频
|
亚洲一区bb
|
欧美久久电影
|
亚洲国产一区在线
|
蜜桃久久精品乱码一区二区
|