匈牙利命名法
MFC基本上采用匈牙利命名法,匈牙利命名法关键是:
1、 标识符的名字以一个或者多个小写字母开头作为前缀;
2、 前缀之后的是首字母大写的一个单词或多个单词组合,该单词要指明变量的用途。
前缀 |
类型 |
a |
数组 (Array) |
b |
布尔值 (Boolean) |
by |
字节 (Byte) == 8 bit |
c |
有符号字符 (Char) |
cb |
无符号字符 (Char Byte,没有多少人用) |
cr |
颜色参考值 (ColorRef) |
cx,cy |
坐标差(长度 ShortInt) |
dw |
双字 (Double Word) == 4 Byte == 4 * 8 bit |
fn |
函数(function) |
h |
句柄(Handle) |
i |
整型(int) |
l |
长整型 (Long int) |
lp |
长指针(Long Pointer) |
m_ |
类的成员(member of a class) |
n |
短整型 (Short Int) |
np |
近指针(Near Pointer) |
p |
指针(Pointer) |
s |
字符串型(string) |
sz |
以字符''结尾的字符串 (String with Zero End) |
w |
字(Word) == 2 Byte == 2 * 8 bit |
VC常用前缀列表
前缀 |
类型 |
描述 |
例子 |
ch |
char |
8位字符 |
chGrade |
ch |
TCHAR |
16位UNICODE类型字符 |
chName |
b |
BOOL |
布尔变量 |
bEnabled |
n |
int |
整型(其大小由操作系统决定) |
nLength |
n |
UINT |
无符号整型(其大小由操作系统决定) |
nLength |
w |
WORD |
16位无符号整型 |
wPos |
l |
LONG |
32位有符号整型 |
lOffset |
dw |
DWORD |
32位无符号整型 |
dwRange |
p |
* |
内存模块指针,指针变量 |
pDoc |
lp |
FAR* |
长指针 |
lpDoc |
lpsz |
LPSTR |
32位字符串指针 |
lpszName |
lpsz |
LPCSTR |
32位常量字符串指针 |
lpszName |
lpsz |
LPCTSTR |
32位UNICODE类型常量指针 |
lpszName |
h |
handle |
Windows对象句柄 |
hWnd |
lpfn |
(*fn)() |
回调函数指针 |
lpfnAbort |
前缀 |
类型 |
例子 |
g_ |
全局变量 |
g_Servers |
C |
类或者结构体 |
CDocument,CPrintInfo |
m_ |
成员变量 |
m_pDoc,m_nCustomers |
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; |
vc资源名字定义格式
IDM_XX |
//M:Menu | |
位图: |
IDB_XX |
//B:Bitmap |
对话框: |
IDD_XX |
//D:Dialog |
字符串: |
IDS_XX |
//S:String |
ICON: |
IDI_XX |
//I:Icon |
按钮控件: |
IDC_BTN_XX |
//BTN:Button |
编辑控件: |
IDC_EDT_XX |
//EDT:EditBox |
列表控件: |
IDC_LST_XX |
//LST:ListCtrl |
树表控件: |
IDC_TRE_XX |
//TRE:TreeCtrl |
富文本控件: |
IDC_RCH_XX |
//RCH:RichEdit |
静态本控件: |
IDC_STT_XX |
//STT:StaticText |
组合框控件: |
IDC_CMB_XX |
//CMB:ComboBox |
滚动条控件: |
IDC_SCR_XX |
//SCR:ScrollBar |
滑动条控件: |
IDC_SLD_XX |
//SLD:Slider |
多选项控件: |
IDC_CHK_XX |
//CHK:CheckBox |
单选项控件: |
IDC_RDB_XX |
//RDB:RadioButton |