国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

C++標識符命名規則相關應用技巧分享

開發 后端
C++標識符命名規則是一個比較基礎的內容,但是對于初學者來說要想完全掌握它還是比較困難的。在這里將會對此進行詳細介紹。

作為一個經常混戰與開發領域的編程人員來說,掌握兩門以上的編程語言是他們制勝的必備法寶。其中C++語言就是其中一個重要的選擇。在這里我們將會為大家介紹一下C++標識符命名規則的一些概念。

命名規則比較著名的命名規則當推Microsoft公司的“匈牙利”法,該命名規則的主要思想是“在變量和函數名中加入前綴以增進人們對程序的理解”。例如所有的字符變量均以ch為前綴,若是指針變量則追加前綴p。如果一個變量由ppch開頭,則表明它是指向字符指針的指針。“匈牙利”法***的缺點是煩瑣,例如

  1. int i, j, k;   
  2. float x, y, z; 

倘若采用“匈牙利”命名規則,則應當寫成:int iI, iJ, ik; // 前綴 i表示int類型float fX, fY, fZ; // 前綴 f表示float類型如此煩瑣的程序會讓絕大多數程序員無法忍受。據考察,沒有一種命名規則可以讓所有的程序員贊同,程序設計教科書一般都不指定命名規則。命名規則對軟件產品而言并不是“成敗悠關”的事,我們不要化太多精力試圖發明世界上***的命名。#t#

規則,而應當制定一種令大多數項目成員滿意的命名規則,并在項目中貫徹實施。3.1 共性規則本節論述的共性規則是被大多數程序員采納的,我們應當在遵循這些共性規則的前提下,再擴充特定的規則。

標識符應當直觀且可以拼讀,可望文知意,不必進行“解碼”。

標識符***采用英文單詞或其組合,便于記憶和閱讀。切忌使用漢語拼音來命名。程序中的英文單詞一般不會太復雜,用詞應當準確。例如不要把CurrentValue寫成NowValue。

標識符的長度應當符合“min-length && max-information”原則。

幾十年前老ANSI C規定名字不準超過6個字符,現今的C++/C不再有此限制。一般來說,長名字能更好地表達含義,所以函數名、變量名、類名長達十幾個字符不足為怪。那么名字是否越長約好?不見得! 例如變量名maxval maxValueUntilOverflow好用。單字符的名字也是有用的,常見的如i,j,k,m,n,x,y,z等,它們通常可用作函數內的局部變量。

C++標識符命名規則盡量與所采用的操作系統或開發工具的風格保持一致。

例如Windows應用程序的標識符通常采用“大小寫”混排的方式,如AddChild。而Unix應用程序的標識符通常采用“小寫加下劃線”的方式,如add_child。別把這兩類風格混在一起用。

程序中不要出現僅靠大小寫區分的相似的標識符。

例如:

  1. int x, X; // 變量x 與 X 容易混淆void foo(int x); // 函數foo 與FOO容易混淆  
  2. void FOO(float x); 

 

程序中不要出現標識符完全相同的局部變量和全局變量,盡管兩者的作用域不同而不會發生語法錯誤,但會使人誤解。【規則3-1-6】變量的名字應當使用“名詞”或者“形容詞+名詞”。
例如:

  1. float value;  
  2. float oldValue;  
  3. float newValue; 

 

全局函數的名字應當使用“動詞”或者“動詞+名詞”(動賓詞組)。類的成員函數應當只使用“動詞”,被省略掉的名詞就是對象本身。例如:

  1. DrawBox(); // 全局函數  
  2. box->Draw(); // 類的成員函數 

 


用正確的反義詞組命名具有互斥意義的變量或相反動作的函數等。例如:

  1. int minValue;  
  2. int maxValue;  
  3. int SetValue(…);  
  4. int GetValue(…); 

 

盡量避免名字中出現數字編號,如Value1,Value2等,除非邏輯上的確需要編號。這是為了防止程序員偷懶,不肯為命名動腦筋而導致產生無意義的名字(因為用數字編號最省事)。簡單的Windows應用程序命名規則作者對“匈牙利”命名規則做了合理的簡化,下述的C++標識符命名規則簡單易用,比較適合于Windows應用軟件的開發。

類名和函數名用大寫字母開頭的單詞組合而成。例如:

  1. class Node; // 類名  
  2. class LeafNode; // 類名  
  3. void Draw(void); // 函數名  
  4. void SetValue(int value); // 函數名l 

 

變量和參數用小寫字母開頭的單詞組合而成。例如:

  1. BOOL flag;  
  2. int drawMode; 

 

常量全用大寫的字母,用下劃線分割單詞。例如:

  1. const int MAX = 100;const int MAX_LENGTH = 100

靜態變量加前綴s_(表示static)。例如:

  1. void Init(…)  
  2. {  
  3. static int s_initValue; // 靜態變量  
  4. …  

 

如果不得已需要全局變量,則使全局變量加前綴g_(表示global)。例如:

  1. int g_howManyPeople; // 全局變量  
  2. int g_howMuchMoney; // 全局變量 

 

類的數據成員加前綴m_(表示member),這樣可以避免數據成員與成員函數的參數同名。例如:

  1. void Object::SetValue(int width, int height)  
  2. {  
  3. m_width = width;  
  4. m_height = height;  

 

為了防止某一軟件庫中的一些標識符和其它軟件庫中的沖突,可以為各種標識符加上能反映軟件性質的前綴。例如三維圖形標準OpenGL的所有庫函數均以gl開頭,所有常量(或宏定義)均以GL開頭。

以上就是對C++標識符命名規則的相關介紹。

責任編輯:曹凱 來源: 博客園
相關推薦

2010-02-05 13:44:06

C++ eof()函數

2010-02-01 11:13:00

C++ Traits

2021-04-25 08:11:57

C語言常量與變量標識符命名規范

2010-02-04 14:58:06

C++內存分配

2010-02-06 13:47:08

C++標準擴展

2010-02-01 17:09:07

C++鏈表操作

2010-02-06 10:24:48

C++二維數組初始化

2010-02-06 16:16:01

C++冒泡排序

2010-02-05 18:04:21

C++剪切板

2009-12-29 16:08:41

Silverlight

2010-01-18 10:16:58

學習C++

2011-07-13 16:36:11

C++

2010-02-03 15:35:00

C++輸入輸出漢字

2009-12-30 10:25:03

Silverlight

2010-01-28 10:55:14

Android電源管理

2009-08-26 14:01:18

C#標識符

2010-03-04 14:39:52

Python讀取輸入值

2010-02-06 13:52:39

C++ profile

2010-02-06 15:49:31

刪除C++容器值

2010-02-06 17:09:29

C++文件拷貝
點贊
收藏

51CTO技術棧公眾號

国产成人精品影视| 欧美人伦禁忌dvd放荡欲情| 蜜桃视频中文字幕| 在线观看日韩www视频免费| 制服丝袜日韩| 亚洲三区在线观看| 欧美三级在线看| 中文字幕一区二区av| 国产天堂av| 国产91ⅴ在线精品免费观看| 丰满亚洲少妇av| 日韩影院在线| 制服诱惑一区| 精品国产麻豆免费人成网站| 午夜精品网站| 最近中文字幕mv第三季歌词 | 久久激情五月婷婷| 尤物在线视频| 欧美激情论坛| 欧美日韩国产中文| 日韩电影在线免费| heyzo高清国产精品| 中文字幕久精品免| 亚洲欧美日韩爽爽影院| 国产激情91久久精品导航 | 麻豆影院在线| 在线国产99| 日韩中文在线中文网在线观看| 久久精品欧美一区二区三区不卡| 亚洲一区有码| 四色永久免费网站| 国产欧美最新羞羞视频在线观看| 日本韩国一区二区三区视频| 久久激情综合| 欧美一级在线| 亚洲成av人影片在线观看| 97国产超碰| 色一区av在线| 亚洲成人av一区| 国产一区二区精品久久| 99国产精品久久一区二区三区| 99免在线观看免费视频高清| 91成人网在线| 成人高清免费观看| 精久久久久久久久久久| 夜夜嗨网站十八久久| 欧美1区2区3区| 亚洲激情偷拍| 欧美区一区二| 在线亚洲国产精品网站| 日韩有码一区二区三区| 久久婷婷影院| 国产成人精品亚洲777人妖| 国产精品亚洲一区二区三区妖精 | 亚洲嫩草精品久久| 亚洲欧洲美洲综合色网| 亚洲精品福利视频网站| 亚洲精品中文在线影院| 亚洲婷婷在线视频| 中文子幕无线码一区tr| 97久久超碰精品国产| 久久日韩粉嫩一区二区三区| 成人免费视频一区| 99九九99九九九视频精品| 国产精品国产自产拍高清av| 亚洲日本va在线观看| 好看的av在线不卡观看| 欧美日韩国产网站| 天天综合91| 精品日韩一区| 亚洲小说欧美另类社区| 99热这里只有成人精品国产| 久久国产免费看| www国产精品av| 综合久久久久综合| 欧美午夜精品久久久久久人妖 | 国产日韩v精品一区二区| 国产精品久久久久久久久晋中| 粉嫩高潮美女一区二区三区| 91麻豆国产精品久久| 亚洲精品水蜜桃| 欧美另类变人与禽xxxxx| 精品日韩一区二区| 亚洲欧美第一页| 欧美激情a∨在线视频播放| 久久久精品日本| 国产精品高潮在线| 欧美日韩一区在线播放| 免费看污污视频| 在线免费视频福利| 日韩毛片网站| 可以免费看不卡的av网站| 亚洲激情网站免费观看| 亚洲毛片一区二区| 国产精品一区二区欧美黑人喷潮水| 中文字幕日本最新乱码视频| 日韩精品在线中文字幕| www.99av.com| 欧美性孕妇孕交| 国产91足控脚交在线观看| 成人看片在线观看| 北条麻妃一区二区三区在线| av资源久久| 日本色综合中文字幕| 国产精品女人毛片| 欧美美女一区二区三区| 日韩在线视频观看正片免费网站| 国产成人激情视频| 久久99精品久久久久久水蜜桃| 国产成人一二三区| 91成人福利在线观看| 欧美13videosex性极品| 亚洲精品小区久久久久久| 精品69视频一区二区三区Q| 国产美女一区二区| 亚洲成a人v欧美综合天堂下载| 亚洲成人xxx| 国产在线精品一区免费香蕉| 亚洲不卡中文字幕无码| 色吊丝在线永久观看最新版本| 偷拍精品精品一区二区三区| 首页国产精品| 国产精品色哟哟| 日韩一区二区电影在线| 国产精品91视频| 免费视频爱爱太爽了| 免费在线观看黄色网| 欧美福利在线播放网址导航| 日韩vs国产vs欧美| 色综合久久综合网| 欧洲成人免费aa| 四虎永久在线精品无码视频| а天堂中文在线官网| 日韩在线视频精品| 欧美极品美女视频| 色久欧美在线视频观看| 精品久久久久久一区| 黄页视频在线免费观看| 99久久免费精品国产72精品九九| 国产成人av在线影院| 精品国产91乱码一区二区三区| 成人激情综合网| 天天综合入口| 青青草97国产精品麻豆| 亚洲综合色自拍一区| 精品国产拍在线观看| 国产视频九色蝌蚪| 精品无人乱码一区二区三区| 秋霞电影网一区二区| 精品精品国产高清a毛片牛牛| 国产精华一区| 天堂8中文在线| 久久精品女人天堂| 欧美一级欧美一级在线播放| 日韩wuma| 色黄视频在线观看| 26uuu国产电影一区二区| 91豆花精品一区| 中文在线三区| 日韩天堂av| 亚洲精品久久久久久久久久久久久 | 欧美在线亚洲| 精品国产成人在线影院| 亚洲精品免费在线看| 欧美黑人粗大| 国产欧美综合色| 国产精品久久久久久久午夜 | 中文字幕一区二区三区四区五区六区| 亚洲黄色免费看| 久久久久久久综合日本| 成人国产在线视频| av在线麻豆| 欧美激情一区在线| 精品欧美一区二区三区久久久| 国产在线精彩视频| 亚洲欧美激情小说另类| 99国产在线视频| 开心久久婷婷综合中文字幕| 精品久久久久久亚洲国产300| 欧美激情www| 影视先锋久久| 亚洲精品720p| 一级视频在线免费观看| 国产一区91精品张津瑜| 成人夜晚看av| 色噜噜成人av在线| 欧美亚洲精品一区| 猫咪成人官网| 国产精品一二二区| 99久久国产免费免费| 91成人app| 亚洲国产三级网| 色在线免费视频| 国产精品亲子伦对白| 天天综合中文字幕| 欧美国产精品| 日本一区二区三区在线播放| 伊人亚洲精品| 中文字幕亚洲专区| 在线中文字幕电影|