原來我一直用的是Camel標記法……收藏學習了。
*/
Camel標記法採用首字母小寫,接下來的單詞都以大寫字母開頭的方法,如myName。
Pastal標記法採用首字母大寫,接下來的單詞都以大寫字母開頭的方法,如MyName。
匈牙利標記法是在Pastal標記法的基礎上,變量名前面加上一個小寫字母,或者小寫字母的序列,以說明該變量的類型,如sMyName。
a Array 數組
b BOOL (int) 布爾(整數)
by Unsigned Char (Byte) 無符號字符(字節)
c Char 字符(字節)
cb Count of bytes 字節數
cr Color reference value 顏色(參考)值
cx Count of x (Short) x的集合(短整數)
dw DWORD (unsigned long) 雙字(無符號長整數)
f Flags (usually multiple bit values) 標誌(通常是有多位的數值)
fn Function 函數
g_ global 全局的
h Handle 句柄
i Integer 整數
l Long 長整數
lp Long pointer 長指針
m_ Data member of a class 一個類的數據成員
n Short int 短整數
p Pointer 指針
s String 字符串
sz Zero terminated String 以0結尾的字符串
tm Text metric 文本規則
u Unsigned int 無符號整數
ul Unsigned long (ULONG) 無符號長整數
w WORD (unsigned short) 無符號短整數
x,y x, y coordinates (short) 座標值/短整數
v void 空
前綴 類型 例子
g_ 全局變量 g_Servers
C 類或者結構體 CDocument,CPrintInfo
m_ 成員變量 m_pDoc,m_nCustomers
前綴 類型 描述例子
ch char 8位字符 chGrade
ch TCHAR 16位Unicode集字符 chName
b BOOL 布爾變量 bEnable
n int 整型 nLength
n UINT 無符整型 nLength
w WORD 16位無符號整型 wPos
l Long 32位有符號整型 lOffset
dw DWORD 32位無符號整型 dwRange
p * 指針變量,內存模塊指針(Ambient memory model point) pDoc
lp Far* 長指針 lpDoc
lpsz LPSTR 32位字符串指針 lpszName
lpsz LPCSTR 32位常量字符串指針 lpszName
lpsz LPCTSTR 32位Unicode集常量指針 lpszName
h handle Windows對象句柄 hWnd
lpfn (*fn)() 回調函數指針 Callback Far pointer to CALLBACK function lpfnAbort
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函數的遠指針
IDR_ 不一樣類型的多個資源共享標識 IDR_MAIINFRAME 1~0x6FFF
IDD_ 對話框資源 IDD_SPELL_CHECK 1~0x6FFF
HIDD_ 對話框資源的Help上下文 HIDD_SPELL_CHECK 0x20001~0x26FF
IDB_ 位圖資源 IDB_COMPANY_LOGO 1~0x6FFF
IDC_ 光標資源 IDC_PENCIL 1~0x6FFF
IDI_ 圖標資源 IDI_NOTEPAD 1~0x6FFF
ID_ 來自菜單項或工具欄的命令 ID_TOOLS_SPELLING 0x8000~0xDFFF
HID_ 命令Help上下文 HID_TOOLS_SPELLING 0x18000~0x1DFFF
IDP_ 消息框提示 IDP_INVALID_PARTNO 8~0xDEEF
HIDP_ 消息框Help上下文 HIDP_INVALID_PARTNO 0x30008~0x3DEFF
IDS_ 串資源 IDS_COPYRIGHT 1~0x7EEF
IDC_ 對話框內的控件 IDC_RECALC 8~0xDEEF
Microsoft 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靜態鏈接庫
動態鏈接庫命名規範 名稱類型
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