• C++ 命名规范


    1. 文件命名

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

    2. 类型命名

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

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

    3. 变量命名

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

     1 string table_name;  // 可 - 用下划线。
     2 
     3 class TableInfo {
     4 private:
     5     string table_name_;  // 可 - 尾后加下划线。
     6     string tablename_;   // 可。
     7     static Pool<TableInfo>* pool_;  // 可。
     8 };
     9 
    10 struct UrlTableProperties {
    11     string name;
    12     int num_entries;
    13 }

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

    4. 常量命名

    const int kDaysInAWeek = 7; 前缀+k

    5. 函数命名

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

    1 AddTableEntry()
    2 
    3 class MyClass {
    4 public:
    5     int num_entries() const { return num_entries_; }
    6     void set_num_entries(int num_entries) { num_entries_ = num_entries; }
    7 private:
    8     int num_entries_;
    9 };

    6. 命名空间命名

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

    7. 枚举命名

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

    8. 宏命名

    #define PI_ROUNDED 3.0
  • 相关阅读:
    MySQL缓存分类
    Babel 是干什么的
    npm是干什么的?
    在改变某一项目的svn的地址,relocate
    在搭建服务器的时候,svn最好与项目所部署的服务器分开
    简述负载均衡和CDN技术
    nginx介绍
    NideShop项目的安装部署教程
    Navicat破解
    当返回的不是单独的一种数据格式
  • 原文地址:https://www.cnblogs.com/ybqjymy/p/16696465.html
Copyright © 2020-2023  润新知