1、严格采用阶梯层次组织程序代码:   
    各层次缩进的分格采用VC的缺省风格,即每层次缩进为4格,括号位于下一行。要求相匹配的大括号在同一列,对继行则要求再缩进4格。例如:   
    2、提示信息字符串的位置   
    在程序中需要给出的提示字符串,为了支持多种语言的开发,除了一些给调试用的临时信息外,其他所有的提示信息必须定义在资源中。   
    3、对变量的定义,尽量位于函数的开始位置。   
二、命名规则:   
    1、变量名的命名规则   
    ①、变量的命名规则要求用“匈牙利法则”。即开头字母用变量的类型,其余部分用变量的英文意思或其英文意思的缩写,尽量避免用中文的拼音,要求单词的第一个字母应大写。   
    即:    变量名=变量类型+变量的英文意思(或缩写)   
    对非通用的变量,在定义时加入注释说明,变量定义尽量可能放在函数的开始处。   
    见下表:   
    bool(BOOL)    用b开头    bIsParent   
    byte(BYTE)    用by开头    byFlag   
    short(int)    用n开头    nStepCount   
    long(LONG)    用l开头    lSum   
    char(CHAR)    用c开头    cCount   
    float(FLOAT)    用f开头    fAvg   
    double(DOUBLE)    用d开头    dDeta   
    void(VOID)    用v开头    vVariant   
    unsigned    int(WORD)    用w开头    wCount   
    unsigned    long(DWORD)    用dw开头    dwBroad   
    HANDLE(HINSTANCE)    用h开头    hHandle   
    DWORD    用dw开头    dwWord   
    LPCSTR(LPCTSTR)    用str开头    strString   
    用0结尾的字符串    用sz开头    szFileName   
   
    对未给出的变量类型要求提出并给出命名建议给技术委员会。   
   
    ②、指针变量命名的基本原则为:   
    对一重指针变量的基本原则为:   
    “p”+变量类型前缀+命名   
    如一个float*型应该表示为pfStat   
    对多重指针变量的基本规则为:   
    二重指针:   
“pp”+变量类型前缀+命名   
    三重指针:   
“ppp”+变量类型前缀+命名   
    ......   
    ③、全局变量用g_开头,如一个全局的长型变量定义为g_lFailCount,即:变量名=g_+变量类型+变量的英文意思(或缩写)   
    ④、静态变量用s_开头,如一个静态的指针变量定义为s_plPerv_Inst,即:    变量名=s_+
变量类型+变量的英文意思(或缩写)   
    ⑤、成员变量用m_开头,如一个长型成员变量定义为m_lCount;即:变量名=m_+变量类型+变量的英文意思(或缩写)   
    ⑥、对枚举类型(enum)中的变量,要求用枚举变量或其缩写做前缀。并且要求用大写。   
    如:enum    cmEMDAYS   
    {   
    EMDAYS_MONDAY;   
    EMDAYS_TUESDAY;   
    ……   
    };   
    ⑦、对struct、union、class变量的命名要求定义的类型用大写。并要加上前缀,其内部变量的命名规则与变量命名规则一致。   
    结构一般用S开头   
    如:struct    ScmNPoint   
    {   
    int    nX;//点的X位置   
    int    nY;    //点的Y位置   
    };   
    联合体一般用U开头   
    如:    union    UcmLPoint   
    {   
    long    lX;   
    long    lY;   
    }   
    类一般用C开头   
指针变量的定义格式    如:   
    class    CcmFPoint   
    {   
    public:   
    float    fPoint;   
    };   
    对一般的结构应该定义为类模板,为以后的扩展性考虑   
    如:   
    template   
    class    CcmTVector3d   
    {   
    public:   
    TYPE    x,y,z;   
    };   
   

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。