匈牙利表示法:
它通過在每一個表示符名字的前面放置一個數據類型助記符,爲程序員提供了對標識符的即時識別。
1.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
|
hpalette
|
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
|
CRet
|
rect
|
2.一般前綴命名規範
前綴
|
類型
|
實例
|
C
|
類或結構
|
CDocument,CPrintInfo
|
m_
|
成員變量
|
m_pDoc,
|
3.變量名規範
前綴
|
類型
|
描述
|
實例
|
ch
|
char
|
8爲字符
|
chGrade
|
ch
|
TCHAR
|
如果_UNICODE定義,爲16位字符
|
chName
|
b
|
BOOL
|
布爾值
|
bEnabled
|
n
|
int
|
整型(其大小依賴於操作系統)
|
nLength
|
n
|
UNIT
|
無符號值(其大小依賴於操作系統)
|
nLength
|
w
|
WORD
|
16位無符號值
|
wPos
|
l
|
LONG
|
32位有符號整型
|
lOffset
|
dw
|
DWORD
|
32位無符號整型
|
dwRange
|
p
|
*
|
指針
|
pDoc
|
lp
|
FAR*
|
遠指針
|
lpDoc
|
lpsz
|
LPSTR
|
32位字符串指針
|
lpszName
|
lpsz
|
LPCTSTR
|
如果_UNICODE定義,位32位常量字符串指針
|
lpszName
|
h
|
handle
|
Windows對象句柄
|
hWnd
|
lpfn
|
callback
|
指向CALLBACK函數的遠指針
|
lpfnAbort
|
4.應用程序符號命名規範
前綴
|
符號類型
|
實例
|
範圍
|
IDR_
|
不同類型的多個資源共享標識
|
IDR_MAINFRAME
|
1-0x6FFF
|
IDD_
|
對話框資源
|
IDD_SPELL_CHECK
|
...
|
HIDD_
|
對話框資源的Help上下文
|
HIDD_SPELL_CHECK
|
0X20001-0X26FF
|
IDB_
|
位圖資源
|
IDB_COMPANY_LOGO
|
1-0X6FFF
|
IDC_
|
光標資源
|
IDC_PENCIL
|
...
|
IDI_
|
圖表資源
|
IDI_NOTEPAD
|
...
|
ID_
|
來自菜單項或工具欄的命令
|
ID_TOOLS_SPELLING
|
0x8000-0xDFFF
|
HID_
|
命令Help上下文
|
HID_TOOLS_SPELLING
|
...
|
IDP_
|
消息框提示
|
IDP_INVALID_PARINO
|
8-0xDFFF
|
HIDP_
|
消息框Help上下文
|
HIDP_INVALID_PARINO
|
0X30008-0x3DFFF
|
IDS_
|
串資源
|
IDS_COPYRIGHT
|
1-0x7FFF
|
IDC_
|
對話框內的控件
|
IDC_RECALC
|
8-0xDFFF
|
5.Microsoft MFC宏命名規範
名稱
|
類型
|
_AFXDLL
|
唯一的動態連接庫(Dynamic
|
_ALPHA
|
僅編譯DEC
|
_DEBUG
|
包括診斷的調式版本
|
_MBCS
|
編譯多字節字符集
|
_UNICODE
|
在一個應用程序中打開Unicode
|
AFXAPI
|
MFC提供的函數
|
CALLBACK
|
通過指針回調的函數
|
6.庫標識命名規範
指示符
|
值和含義
|
u
|
ANSI(N)或Unicodeu(U)
|
d
|
調試或發行:D=調式;忽略指示符爲發行
|
7.靜態庫版本命名規範
庫
|
描述
|
NAFXCWD.LIB
|
調試版本:MFC靜態連接庫
|
NAFXCW.LIB
|
發行...
|
UAFXCWD.LIB
|
調試版本:具有Unicode支持的MFC靜態連接庫
|
UAFXCW.LIB
|
發行...
|
8.動態庫連接命名規範
名稱
|
類型
|
_AFXDLL
|
唯一的動態連接庫(DLL)版本
|
WINAPI
|
Windows所提供的函數
|
9.Windows.h命名規範
類型定義
|
描述
|
WINAPI
|
使用在API自己的API中使用該類型
|
CALLBACK
|
使用在應用程序回叫例程如窗口和對話框中的FAR
|
LPCSTR
|
與LPSTR相同,但LPCSTR用於只讀串指針,其定義類似於(const char FAR*)
|
UNIT
|
與可移值的無符號整型類型,其大小由主機環境決定(對Windows NT和Windows 95爲32位)。它是unsigned int的同義詞,使用WORD位置,在一個32位的平臺上希望得到一個16爲無符號值的極少數情況除外
|
LRESULT
|
窗口程序返回值的類型
|
LPARAM
|
聲明lParam所使用的類型,lParam 是窗口程序的第四個參數
|
WPARAM
|
聲明wParam所使用的類型, wParam是窗口程序的第三個參數(一種組合數據類型)
|
LPVOID
|
一般的指針類型,與(void*)等同。應該使用它來代替LPSTR。 |