C、C++变量命名规则

    xiaoxiao2021-03-25  212

    http://blog.csdn.net/qingzai_/article/details/44218149 原文

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

    十一、 有关项目中变量的命名规则

    有关项目的全局变量用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;

    十三、STL 容器类型的前缀 vector<int>  vecValue; 说明: vec表示vector容器的前缀。 list<double> lstInfo;
    转载请注明原文地址: https://ju.6miu.com/read-2469.html

    最新回复(0)