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

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

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

二.使用变量前缀。

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<int> vecValue;

  list<double> 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;
  ComboBox IDC_CB_NAME;