一、mfc、控制代碼、控制項及結構的命名規範
windows型別 樣本變數; mfc類 樣本變數;
hwnd hwnd; cwnd* pwnd;
hdlg hdlg; cdialog* pdlg;
hdc hdc; cdc* pdc;
hgdiobj hgdiobj; cgdiobject* pgdiobj;
hpen hpen; cpen* ppen;
hbrush hbrush; cbrush* pbrush;
hfont hfont; cfont* pfont;
hbitmap hbitmap; cbitmap* pbitmap;
hpalette hpaltte; cpalette* ppalette;
hrgn hrgn; crgn* prgn;
hmenu hmenu; cmenu* pmenu;
hwnd hctl; cstate* pstate;
hwnd hctl; cbutton* pbutton;
hwnd hctl; cedit* pedit;
hwnd hctl; clistbox* plistbox;
hwnd hctl; ccombobox* pcombobox;
hwnd hctl; cscrollbar* pscrollbar;
hsz hszstr; cstring pstr;
point pt; cpoint pt;
size size; csize size;
rect rect; crect rect;
二、一般字首命名規範
字首 型別 例項
c 類或結構 cdocument,cprintinfo
m_ 成員變數 m_pdoc,m_ncustomers
三、變數命名規範
字首 型別 描述 例項
ch char 8位字元 chgrade
ch tchar 如果_unicode定義,則為16位字元 chname
b bool 布林值 benable
n int 整型(其大小依賴於作業系統) nlength
n uint 無符號值(其大小依賴於作業系統) nheight
w word 16位無符號值 wpos
l long 32位有符號整型 loffset
dw dword 32位無符號整型 dwrange
p * 指標 pdoc
lp far* 遠指標 lpszname
lpsz lpstr 32位字串指標 lpszname
lpsz lpcstr 32位常量字串指標 lpszname
lpsz lpctstr 如果_unicode定義,則為32位常量字串指標 lpszname
h handle windows物件控制代碼 hwnd
lpfn callback 指向callback函式的遠指標
四、應用程式符號命名規範
mfc巨集命名規範 名稱 型別
_afxdll 唯一的動態連線庫(dynamic link library,dll)版本
_alpha 僅編譯dec alpha處理器
_debug 包括診斷的除錯版本
_mbcs 編譯多位元組字符集
_unicode 在乙個應用程式中開啟unicode
afxapi mfc提供的函式
callback 通過指標**的函式
六、庫識別符號命名法
識別符號 值和含義
u ansi(n)或unicode(u)
d 除錯或發行:d = 除錯;忽略識別符號為發行。
七、靜態庫版本命名規範
庫 描述
nafxcwd.lib 除錯版本:mfc靜態連線庫
nafxcw.lib 發行版本:mfc靜態連線庫
uafxcwd.lib 除錯版本:具有unicode支援的mfc靜態連線庫
uafxcw.lib 發行版本:具有unicode支援的mfc靜態連線庫
八、動態連線庫命名規範
名稱 型別
_afxdll 唯一的動態連線庫(dll)版本
九、winapi windows所提供的函式
windows.h中新的命名規範 型別 定義描述
winapi 使用在api宣告中的far pascal位置,如果正在編寫乙個具有匯出api人口點的dll,則可以在自己的api中使用該型別
callback 使用在應用程式回叫例程,如視窗和對話方塊過程中的far pascal的位置
lpcstr 與lpstr相同,只是lpcstr用於唯讀串指標,其定義類似(const char far*)
uint 可移植的無符號整型型別,其大小由主機環境決定(對於windows nt和windows 9x為32位);它是unsigned int的同義詞
lresult 視窗程式返回值的型別
lparam 宣告lparam所使用的型別,lparam是視窗程式的第四個引數
wparam 宣告wparam所使用的型別,wparam是視窗程式的第三個引數
lpvoid 一般指標型別,與(void *)相同,可以用來代替lpstr
匈牙利命名法
匈牙利命名法 匈牙利命名法是一種程式設計時的命名規範。基本原則是 變數名 屬性 型別 物件描述,其中每一物件的名稱都要求有明確含義,可以取物件名字全稱或名字的一部分。命名要基於容易記憶容易理解的原則。保證名字的連貫性是非常重要的。舉例來說,表單的名稱為form,那麼在匈牙利命名法中可以簡寫為frm,...
匈牙利命名法
匈牙利命名法是一種程式設計時的命名規範。基本原則是 變數名 屬性 型別 物件描述,其中每一物件的名稱都要求有明確含義,可以取物件名字全稱或名字的一部分。命名要基於容易記憶容易理解的原則。保證名字的連貫性是非常重要的。舉例來說,表單的名稱為form,那麼在匈牙利命名法中可以簡寫為frm,則當表單變數名...
匈牙利命名法
匈牙利命名法 匈牙利命名法是一種程式設計時的命名規範。基本原則是 變數名 屬性 型別 物件描述,其中每一物件的名稱都要求有明確含義,可以取物件名字全稱或名字的一部分。命名要基於容易記憶容易理解的原則。保證名字的連貫性是非常重要的。舉例來說,表單的名稱為form,那麼在匈牙利命名法中可以簡寫為frm,...