C++編程規範 11風格

來源:互聯網
上載者:User

11風格

  11.1 標示符命名與定義

建議11.1 類命名以大寫字母開頭,中間單詞也以大寫開頭

樣本:
    class UrlTable;
    class UrlTableProperties;

  11.2 排版

建議11.2 類的聲明按照一定的次序進行,關鍵字不縮排

說明:類的聲明按照一定的次序和規範進行。建議的次序如下:
按照存取控制特性段排序:public、protected、private,如果沒有可以忽略。這個排序是讓聲
    明的時候使用者首先看到最關心的特性(對外介面)。
在每一段中按照如下順序聲明(先定義後續用到的類型,常量和enums;然後定義行為(構造,析構,
    成員函數),最後定義成員變數):
    1. typedefs和enums;

    2. 常量;

    3. 建構函式;

    4. 解構函式;

    5. 成員函數,含靜態成員函數;

    6. 資料成員,含待用資料成員。

建議11.3 建構函式初始化列表在同一行或按4格縮排並排幾行

樣本:初始化列表放在同一行:

    class TaskProgressTimer
    {
    public:
       TaskProgressTimer(CHRCollectTask & parent):m_delayTime(30)
       {
       }
    };
初始化列表並排多行:

    class TaskProgressTimer
    {
    public:
       TaskProgressTimer(CHRCollectTask & parent):
           m_parTask(parent) ,
           m_delayTime(30) ,
       m_intervalTime(50) ,
           timer_handler_( reactor(), *this, m_delayTime, m_intervalTime )
       {
       }
    };

  11.3 注釋

建議11.4 使用‘//’注釋方式,而不是‘/* */'

說明:說明:使用        ‘//’ 而不是    ‘/* */’ 來注釋 C++代碼。使用‘/* */’的缺點就是容易產生

交叉錯亂。

即使注釋多行代碼, //仍然是首選,現在的編輯器提供多行加‘//’和去‘//’的功能。

建議11.5 為重要的類或結構體作注釋,注釋格式支援工具自動產生

說明:為重要的類或結構體作注釋,不宜寫太多無用的注釋。注釋主要表達代碼難以直接表達的意思。

建議11.6 為所有重要的成員函數作注釋

建議11.7 正式發布的代碼不能使用TODO 注釋

說明:對那些臨時的、短期的解決方案,或待改進的代碼使用TODO注釋。使用全大寫的字串TODO,

後面括弧裡加上姓名、工號等資訊。

//TODO(姓名: 工號: ):注釋內容

  11.4 檔案組織

建議11.8 整個項目需要的公用標頭檔應放在一個單獨的目錄下

建議11.9 一個模組的目錄層次不宜太深,以1~2層為宜,介面檔案放在最外層

建議11.10 保持檔案前言的簡潔性

說明:給出著作權說明和該檔案的簡介後即可切入正題——編碼。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.