C和C++命名规则

1.匈牙利法则

  • 类名和函数名用大写字母开头的单词组合而成
    class Node;      // 类名
    class LeafNode;    // 类名
    void Draw(void);   // 函数名
    void SetValue(int value); //  函数名
  • 变量和参数用小写字母开头的单词组合而成
    BOOL flag;
    int drawMode;

  • 指针变量命名用“p”+变量类型前缀+命名
    float * pfImg = NULL;

  • 常量全用大写的字母,用下划线分割单词
    const int MAX =  100; 
    const int MAX_LENGTH =  100;

  • 静态变量加前缀s_(表示static)
    void Init(…)      {
    static  int s_initValue; // 静态变量
    …     
    }

  • 如果不得已需要全局变量,则使全局变量加前缀g_(表示global)
    int g_howManyPeople;    // 全局变量
    int g_howMuchMoney;    // 全局变量
  • 类的数据成员加前缀m_(表示member),这样可以避免数据成员与成员函数的参数同名
    void  Object::SetValue(int width, int height)
    {
    m_width = width;
    m_height = height;
    }

  • 对枚举类型(enum)中的变量,要求用枚举变量或其缩写做前缀。并且要求用大写
    enum emEMDAYS
    {
    EMDAYS_MONDAY;
    EMDAYS_TUESDAY;
    ……
    };

  • 对struct、union变量的命名要求定义的类型用大写。并要加上前缀,其内部变量的命名规则与变量命名规则一致
    结构一般用S开头,如:
    struct ScmNPoint
    {
    int nX;//点的X位置
    int nY; //点的Y位置
    };
    联合体一般用U开头,如:
    union UcmLPoint
    {
    LONG lX;
    LONG lY;
    }
  • 为了防止某一软件库中的一些标识符和其它软件库中的冲突,可以为各种标识符加上能反映软件性质的前缀。例如三维图形标准OpenGL的所有库函数均以gl开头,所有常量(或宏定义)均以GL开头

2.驼峰法

  • 小驼峰法
    变量一般用小驼峰法标识。小驼峰法的意思是:除第一个单词之外,其他单词首字母大写。譬如
    int myNameLength;
  • 大驼峰法
    类名,函数名,属性,命名空间一般用大驼峰法。相比小驼峰法,大驼峰法把第一个单词的首字母也大写了。
    public ClassStudent;

猜你喜欢

转载自blog.csdn.net/u013187057/article/details/80259236