C、C++变量命名规则
来源:互联网 发布:java 函数的返回值 编辑:程序博客网 时间:2024/05/20 00:12
转载自:http://blog.sina.com.cn/s/blog_8a7012cf01017h9p.html
变量命名规则是为了增强代码的可读性和容易维护性。以下为C++必须遵守的变量命名规则: 1、 变量名只能是字母(A-Z,a-z)和数字(0-9)或者下划线(_)组成。2、 第一个字母必须是字母或者下划线开头。3、 不能使用C++关键字来命名变量,以免冲突。4、 变量名区分大小写。 变量命名规则:一、 用最短字符表示最准确的意义。二、 使用变量前缀。1、 整型前缀int nId; //int前缀:nshort sId; //short前缀:sunsigned int unId // unsigned int 前缀:unlong lId; //long前缀:l 2、 浮点型前缀float fValue; //float前缀:fdouble dValue; //double前缀:d 3、 字符型前缀char chChar; //char前缀:ch 4、 字符串前缀char szPath; //char字符串前缀:szstring strPath; //string字符串前缀:strCString strPath; //MFC CString类前缀:str 5、 布尔型前缀bool bIsOK; //bool类型前缀:bBOOL bIsOK; //MFC BOOL前缀:b 6、 指针型前缀char * pPath; //指针前缀:p 7、 数组前缀int arrnNum; //数组前缀:arrCString arrstrName; //数组前缀+类型前缀+名称 8、 结构体前缀STUDENT tXiaoZhang; //结构体前缀:t 9、 枚举前缀enum emWeek; //枚举前缀:em 10、 字节的前缀BYTE byIP; //字节前缀:by 11、 字的前缀DWORD dwMsgID; //双字前缀:dwWORD wMsgID; //单字前缀:w 12、 字符指针前缀LPCTSTR ptszName; //TCHAR类型为ptszLPCSTR pszName; //pcszLPSTR pszName; //psz 13、 STL容器前缀vector vecValue; //vector容器前缀:vec 14、 RECT矩形结构前缀RECT rcChild; //rcCRECT rcChild/ //rc 15、 句柄前缀HWND hWndDlg; //hHBRUSH hBr; //hHPEN hPen; //hHBITMAP hBmpBack; //h 16、 Windows颜色前缀COLORREF crFont; //cr 17、 Windows DC前缀CDC dcClient; //dc 三、 类的成员变量以m_开头,后面为变量,变量同时还要加前缀。CString m_strName; //m_开头+类型前缀+名称 四、 定义一个变量,为了简化,在不影响变量意义的情况下,可仅仅使用前缀。RECT rc; 五、 全局变量一律以g_开头,后面为变量,变量同时还要加前缀。int g_ID; //g六、 定义结构体,保证C和C++兼容,采用typedef语句,并且结构体类型全部大写,以T_开头,指针形式以PT_开头。typedef struct tag TSTUDENT{ int nId; CString strName;}STUDENT,*PSTUDENT;STUDENT tXiaoZhang; //完整定义结构体 七、 变量由多个单词组成,则每个单词的首个字母大写。int nStudentID;CString strStudentName; 八、 定义一个类以C或者T做为类名前缀。class CMyListCtrl;class TMyListCtrl; 九、 MFC控件绑定值类别或者控件类类别,需要以m_开头并且加前缀。CEdit m_EDT_strValue; //Edit绑定控件类别CListBox m_LB_nName; //ListBoxCListCtrl m_LC_Name; //ListCtrl;CComboBox m_CB_Name; /ComboBox 十、 控件ID尽量简化并表明控件类型和意义。Button IDC_BNT_NAME;Edit IDC_EDT_NAME;ListBox IDC_LB_NAME;ListCtrl IDC_LC_NAME;ComboBox IDC_CB_NAME;
十一、 有关项目中变量的命名规则
有关项目的全局变量用g_开始,类成员变量用m_,局部变量若函数较大则可考虑用l_用以显示说明其是局部变量。
前缀 类型 例子
g_ 全局变量 g_Servers
C 类或者结构体 CDocument,CPrintInfo
m_ 成员变量 m_pDoc,m_nCustomers
十二、WINDOWS编程常用对象命名规则
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; CStatic* pStatic;
HWND hCtl; CButton* pBtn;
HWND hCtl; CEdit* pEdit;
HWND hCtl; CListBox* pListBox;
HWND hCtl; CComboBox* pComboBox;
- C++/C变量命名规则
- C/C++ 变量命名规则
- C/C++变量命名规则
- C、C++变量命名规则
- C/C++变量命名规则
- C、C++变量命名规则
- C/C++/VC++ 变量命名规则
- C++变量命名规则
- C语言变量名命名规则
- C语言变量名命名规则
- C语言变量的命名规则
- C语言命名规则
- C/C++命名规则
- C/C++命名规则
- c语言命名规则
- C/C++命名规则
- C/C++命名规则
- C++(-)命名规则
- 神经网络:多层网络与C++实现
- C++开源库
- 继续尝试通过TTL串口去访问pcDuino
- Bitmap的使用
- TCP和UDP 协议发送数据包的大小
- C、C++变量命名规则
- Swift from Scratch-Introduction
- NetworkComms V3 之自定义对象
- 为什么Objective-C的对象“调用方法”叫做发消息。
- 神经网络:卷积神经网络
- NetworkComms V3 之自定义对象
- 修改phpstorm背景色
- PDF分割方法与步骤
- 【 D3.js 高级系列 — 1.1 】 封装文本自动换行