[原创]Enterprise Architecture V7.5 C++代码生成时,头文件中函数声明没有注释,CPP中函数定义却有注释。...
這幾天一直在用Enterprise Architecture來抽象項目中要用到的一些數據結構和類,然后都做得差不多了之后發現,生成代碼的時候.h文件中類成員函數部分沒有注釋,但是.cpp文件中的函數定義塊卻有注釋,我覺得重點應該是要在頭文件的成員函數聲明的地方有注釋效果更好,但是找了半天也沒發現在哪里修改設置。
然后找到了一個“代碼工程模板”,里面有每個語言代碼生成的時候用的模板,我不知道里面用的是什么腳本語言什么的,反正看著不是特別懂。
%synchNewClassNotesSpace="\n"% %synchNewOperationNotesSpace="\n"% %synchNewOperationBodySpace="\n"% %synchNewAttributeNotesSpace="\n"%/// // %fileName% // Implementation of the %elemType% %className% // Created on: %eaDateTime% %if classAuthor != ""% // Original author: %classAuthor% %endIf% ///\n$COMMENT="WARNING: DO NOT MODIFY THIS TEMPLATE BELOW THIS POINT" $guid = "EA_" + %TRIM(eaGUID,"{}")% $guid = %REPLACE($guid,"-","_")% $guid += "__INCLUDED_" #if !defined($guid) #define $guid\n %ImportSection% %list="Namespace" @separator="\n\n"% #endif // !defined($guid)\n里面的C++代碼生成部分模板代碼如上。
然后我就開始花了1個小時去分析他生成C++頭文件中類的時候的操作,然后試圖仿照他的樣子去在模板中在成員函數聲明前面加入這個函數的注釋,結果實驗了幾個地方都沒有效果,最后我注意到有一個變量。
看下面兩個模板:
1.Operation Notes
%if genOptGenComments != "T" or genOptCPPGenMethodNotesInHeader != "T"% %endTemplate%%PI=""% $wrapLen = %genOptWrapComment% $style = %genOptCPPCommentStyle%%if $style == "XML.NET"% %XML_COMMENT($wrapLen)% %elseIf $style == "JavaDoc"% %JAVADOC_COMMENT($wrapLen)% %else% %CSTYLE_COMMENT($wrapLen)% %endIf%
2.Operation Notes Impl
%if genOptGenComments != "T" or genOptCPPGenMethodNotesInBody != "T"% %endTemplate%%PI=""% $wrapLen = %genOptWrapComment% $style = %genOptCPPCommentStyle%%if $style == "XML.NET"% %XML_COMMENT($wrapLen)% %elseIf $style == "JavaDoc"% %JAVADOC_COMMENT($wrapLen)% %else% %CSTYLE_COMMENT($wrapLen)% %endIf%看到上面兩個關鍵字沒,然后我就google了genOptCPPGenMethodNotesInHeader這個詞,發現一個網址,里面說了要讓頭文件中也有注釋只需要修改一個軟件的設置,結果就是因為Enterprise Architecture這個軟件的設置不止在設置菜單中有,在工具——選項中也有部分設置,導致我繞了一個大圈子才發現解決方法。
下面是傳送門:
http://www.sparxsystems.com/enterprise_architect_user_guide/9.2/standard_uml_models/generation_option_field_substi.html
轉載于:https://www.cnblogs.com/myme5261314/archive/2012/07/24/2607069.html
總結
以上是生活随笔為你收集整理的[原创]Enterprise Architecture V7.5 C++代码生成时,头文件中函数声明没有注释,CPP中函数定义却有注释。...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: poj3311 经典tsp问题
- 下一篇: cocos2d-x的Android工程开