• C++ 变量命名规范


    变量命名规则是为了增强代码的可读性和容易维护性。以下为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;

  • 相关阅读:
    jzoj 3176. 【GDOI2013模拟5】蜘蛛侠
    各种各样的根号算法 总结&刷题
    jzoj 3187. 【GDOI2013模拟8】的士
    jzoj 3188. 【GDOI2013模拟8】找数
    jzoj 4673. 【NOIP2016提高A组模拟7.20】LCS again
    jzoj 4672. 【NOIP2016提高A组模拟7.20】Graph Coloring
    markdown 模板2
    树莓派kali开启arp【arpspoof,urlsnarf】
    Java 图片处理——如何生成高清晰度而占有磁盘小的缩略图
    手把手教你生成二维码-google.zxing
  • 原文地址:https://www.cnblogs.com/ybqjymy/p/16696452.html
Copyright © 2020-2023  润新知