一杯清酒邀明月
天下本无事,庸人扰之而烦耳。
posts - 3121,comments - 209,views - 578万

变量命名规则是为了增强代码的可读性和容易维护性。以下为C++必须遵守的变量命名规则:

  1. 变量名只能是字母(A-Z,a-z)和数字(0-9)或者下划线(_)组成。
  2. 第一个字母必须是字母或者下划线开头。
  3. 不能使用C++关键字来命名变量,以免冲突。
  4. 变量名区分大小写。

变量命名规则:

一.用最短字符表示最准确的意义。

二.使用变量前缀。

1.整型前缀
  int nId;       //int前缀:n
  short sId;       //short前缀:s
  unsigned int unId    // unsigned int 前缀:un
  long lId;         //long前缀:l

2.浮点型前缀
  float fValue;       //float前缀:f
  double dValue;     //double前缀:d

3.字符型前缀
  char chChar;      //char前缀:ch

4.字符串前缀
  char szPath;      //char字符串前缀:sz
  string strPath;     //string字符串前缀:str
  CString strPath;    //MFC CString类前缀:str

5.布尔型前缀
  bool bIsOK;     //bool类型前缀:b
  BOOL bIsOK;     //MFC BOOL前缀:b

6、 指针型前缀
  char* pPath;     //指针前缀:p

7.数组前缀
  int arrnNum[];     //数组前缀:arr
  CString arrstrName[]; //数组前缀+类型前缀+名称

8.结构体前缀
  STUDENT tXiaoZhang; //结构体前缀:t

9.枚举前缀
  enum emWeek;   //枚举前缀:em

10.字节的前缀
  BYTE byIP;       //字节前缀:by

11.字的前缀
  DWORD dwMsgID;   //双字前缀:dw
  WORD wMsgID;   //单字前缀:w

12.字符指针前缀
  LPCTSTR ptszName; //TCHAR类型为ptsz
  LPCSTR pszName; //pcsz
  LPSTR pszName;   //psz

13.STL容器前缀
  vector vecValue;   //vector容器前缀:vec

14.RECT矩形结构前缀
  RECT rcChild;     //rc
  CRECT rcChild;    //rc

15.句柄前缀
  HWND hWndDlg;   //h
  HBRUSH hBr;     //h
  HPEN hPen;     //h
  HBITMAP hBmpBack; //h

16.Windows颜色前缀
  COLORREF crFont; //cr

17.Windows DC前缀
  CDC dcClient;    //dc

18.STL

说明:vec表示vector容器的前缀,为了简化变量,变量体后面不再使用前缀

  vector vecValue;

  list lstInfo;

三.类的成员变量以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;    //ListBox
  CListCtrl 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;

posted on   一杯清酒邀明月  阅读(2463)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 全程使用 AI 从 0 到 1 写了个小工具
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)
历史上的今天:
2021-09-15 Qt QGraphicsview缩放及还原
2021-09-15 Qt 拷贝内容到粘贴板 || 获取粘贴板内容
2020-09-15 LIBJPEG 安装编译,读取jpeg图像数据
2020-09-15 LIBTIFF 图像读取与保存
2020-09-15 LIBTIFF库在windows下的编译(32位与64位)
2020-09-15 判断dll是32位还是64位的简单方法(实测有效)
2020-09-15 使用VS工具查看dll是32位还是64位
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示