天天看点

Camel、Pastal、匈牙利标记法

原来我一直用的是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

本文转自莫水千流博客园博客,原文链接:http://www.cnblogs.com/zhoug2020/p/6053069.html,如需转载请自行联系原作者

继续阅读