zoukankan      html  css  js  c++  java
  • C++命名规范

    1. 文件命名

    全部小写,用_区分 my_useful_class.cc
    通常应尽量让文件名更加明确. http_server_logs.h 就比 logs.h 要好
    内联函数必须放在 .h 文件中. 如果内联函数比较短, 就直接放在 .h 中.

    2. 类型命名

    类型名称的每个单词首字母均大写, 不包含下划线: MyExcitingClass, MyExcitingEnum.

    class UrlTableTester { ...
    typedef hash_map<UrlTableProperties *, string> PropertiesMap;
    enum UrlTableErrors { ...
    

    3. 变量命名

    变量名一律小写, 单词之间用下划线连接. 类的成员变量以下划线结尾, 但结构体的就不用,

    string table_name;  // 可 - 用下划线。
    
    class TableInfo {
    private:
        string table_name_;  // 可 - 尾后加下划线。
        string tablename_;   // 可。
        static Pool<TableInfo>* pool_;  // 可。
    };
    
    struct UrlTableProperties {
        string name;
        int num_entries;
    }
    

    对全局变量没有特别要求, 少用就好

    4. 常量命名

    const int kDaysInAWeek = 7; 前缀+k
    

    5. 函数命名

    常规函数使用大小写混合, 取值和设值函数则要求与变量名匹配:

    AddTableEntry()
    
    class MyClass {
    public:
        int num_entries() const { return num_entries_; }
        void set_num_entries(int num_entries) { num_entries_ = num_entries; }
    private:
        int num_entries_;
    };
    

    6. 命名空间命名

    名字空间用小写字母命名, 并基于项目名称和目录结构: google_awesome_project.

    7. 枚举命名

    enum AlternateUrlTableErrors {
        OK = 0,
        OUT_OF_MEMORY = 1,
        MALFORMED_INPUT = 2,
    };
    

    8. 宏命名

    #define PI_ROUNDED 3.0
    
  • 相关阅读:
    搭建kafka高级消费 (high-consumer)php7
    kafka搭建到配置borker集群(项目开发-区块链)
    快速提高谷歌浏览器(Chrome)自带下载器的网速
    利用IO和File类实现拷贝文件目录问题
    随机红包小算法
    二叉树前序中序后序层序遍历问题
    荷兰国旗问题
    二分法查找
    找出数组中最大值and索引
    数组元素反转
  • 原文地址:https://www.cnblogs.com/xytpai/p/15046908.html
Copyright © 2011-2022 走看看