• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 16,  comments - 81,  trackbacks - 0

            DOXYGEN簡明實用教程

            Posted on 2009-03-04 21:31 活著就是幸福 閱讀(507) 評論(0) 編輯 收藏 所屬分類: Project Management

            代碼寫多了難免需要做文檔,給自己還是給別人看都需要如此,這次XBOX360制作,前期沒怎么寫注釋,回頭改Bug都要猜半天自己寫的代碼是什么意思。更別提別人寫的東西,100行代碼也沒有一句注釋,幸好不是我維護,否則要瘋掉了。

            花了一天功夫嘗試了一下Doxygen的使用,還好不難,但是有些磕磕絆絆,它自己的文檔也說不清楚,網上搜出來的教程也只是給出樣子,遇到的問題還是靠自己嘗試了幾十次才搞定。

            不管如何,常用的東西都可以弄出來了。貼在下面:

             -----------------------------------------------------------------------------------

            1.所有注釋都可以使用///開始(C++風格)。

            2.類體前必須加上///描述,否則會產生警告【Compound 類名 is not documented】
              描述中最好不要帶有此類的類名,否則會產生兩個鏈接(但指向同一個文件)影響美觀。

            3.public和protected會自動生成,但是private要在Expert的Build選項里勾中EXTRACT_PRIVATE,static成員也是如此。

            4.函數注釋方式
                /// Constructor【函數描述】
                /// @param [in] pos       The position of Camera in world coordinate         【參數描述1】
                /// @param [in] lookat    The point Camera looks at in world coordinate    【參數描述2】
                BaseCamera( const D3DXVECTOR3& pos, const D3DXVECTOR3& lookat );

            5.變量注釋方式
                D3DXVECTOR3 m_Position;    /*!< Camera position point in world coordinate */   或
                D3DXVECTOR3 m_Position;    ///< Camera position point in world coordinate
            兩種方式產生的結果不同。前者會單獨產生一塊Member Data Documentation注釋,后者會在Pubilc/Protected/Private Attributes變量描述后緊跟注釋。

            6.@參數和\參數相同

            7.產生描述順序和注釋順序相同,一般風格為

                /// 函數描述
                /// @param     參數描述
                /// @return     返回值描述
                /// @retval     返回值1     返回值1描述
                /// @retval     返回值2     返回值2描述
                /// @remarks     注意事項
                /// @note    注意事項,功能同@remarks,顯示字樣不同
                /// @par    自定義圖塊,后面可跟示例代碼之類
                /// @code(必須使用@endcode結束)
                /// 示例代碼(無需縮進)    
                /// @endcode
                /// @see     其他參考項【產生指向參考的鏈接】
                函數代碼聲明

            8.特殊符號
                /// -        產生一個黑色圓點

            9.定義在類體里面的enum
                /// Camera types
                enum CAMERA_TYPE
                {
                    CAMERA_FIRST_VIEW,/*!< Camera that looks from the first view */
                    CAMERA_MODEL_VIEW,///< Camera that looks from the third view
                };
                兩種風格相同。

            以下開始的項都是全局非類內定義,在文件最開始(我嘗試是在include之前) 必須加上【/// \file 文件名】,否則不會生成注釋【沒有File Member頁】。

            10. 定義在文件里面的宏
                 #define CAMERA_TYPE_NUMBER     ///< The number of camera types.       或
                 #define CAMERA_TYPE_NUMBER     /*!< The number of camera types. */
            風格說明見5。

            11. 非類內enum定義同10.        兩種風格相同。見9。
            12. 非類內typedef定義同10.     風格說明見5。

             

            posted on 2010-09-08 15:15 叫我老王吧 閱讀(1430) 評論(2)  編輯 收藏 引用 所屬分類: 轉貼

            FeedBack:
            # re: DOXYGEN簡明實用教程
            2010-12-22 17:45 | Skill
            這個排版讓人抓狂  回復  更多評論
              
            # re: DOXYGEN簡明實用教程
            2010-12-22 17:47 | 叫我老王吧
            @Skill
            這篇是轉載的,啥都沒動都貼過來了  回復  更多評論
              
            <2010年12月>
            2829301234
            567891011
            12131415161718
            19202122232425
            2627282930311
            2345678

            常用鏈接

            留言簿(4)

            隨筆分類

            隨筆檔案

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            性高湖久久久久久久久| 亚洲国产精品热久久| 日本WV一本一道久久香蕉| 国产99久久久国产精品小说| 精产国品久久一二三产区区别| 一本色道久久综合狠狠躁| 日本免费一区二区久久人人澡| 久久九九久精品国产免费直播| 日韩美女18网站久久精品| 97精品国产97久久久久久免费| 国产69精品久久久久777| 亚洲精品WWW久久久久久| avtt天堂网久久精品| 久久免费香蕉视频| 久久夜色精品国产亚洲| 久久久这里有精品| 99久久精品费精品国产| 99久久精品国产一区二区| 久久久久国产成人精品亚洲午夜| 蜜臀久久99精品久久久久久小说| 久久99热这里只有精品国产 | 久久久噜噜噜久久熟女AA片| 久久久WWW免费人成精品| 久久久噜噜噜久久熟女AA片| 人妻无码精品久久亚瑟影视| 99久久99久久精品国产片| 99久久婷婷免费国产综合精品| 亚洲精品高清一二区久久| 国产激情久久久久影院| 九九久久99综合一区二区| 亚洲女久久久噜噜噜熟女| 思思久久精品在热线热| 四虎影视久久久免费| 久久国产精品免费一区| 999久久久免费国产精品播放| 久久se精品一区精品二区| 久久久久久亚洲Av无码精品专口| 久久99久国产麻精品66| 青青草原综合久久大伊人| 亚洲中文精品久久久久久不卡| 久久人做人爽一区二区三区|