掲示板一覧 - トピック一覧 EA ソースコード生成・コード生成テンプレート
C++のコード生成で、インクルードの順序を変更したい |
| スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
| 投稿者 | トピック |
|---|---|
| sugimoto | 投稿日時: 2008-7-14 14:59 |
EA Administrator ![]() ![]() 投稿: 1895 |
C++のコード生成で、インクルードの順序を変更したい○ご質問
C++コード生成で、***.cppファイルに出力されるヘッダファイルの インクルード順序を変更したいと考えています。 デフォルトのコード生成テンプレートを利用した場合、フィールド置換マクロ %fileHeaders% が適用されて、以下の順序でファイルに出力されています。 #include "AAA.h" ← AAA.cppのヘッダーファイルが自動でインクルード #include "BBB.h" ← ソースコードの生成ダイアログで"インポートおよびヘッダ" 欄の下段に入力した内容 このインクルード順序を、以下のように逆にするにはテンプレートを どのようにカスタマイズすればよいですか? #include "BBB.h" #include "AAA.h" ○回答 以下のカスタマイズにより、対応可能です。 1) フィールド置換マクロのclassImportsにて、"インポートおよびヘッダ" の情報を取得し、こちらを先に出力 2) fileHeaders にて現在出力している情報を出力 3) 1), 2) にて、重複している内容は出力しないようにする ただし、現状、classImports では、"インポートおよびヘッダ"の上段 (.h に出力される情報)のみが返却され、下段の情報は取得できないことが 判明しました。 こちらは、下段の情報も取得できるよう、機能改善要望として検討いたします。 このような状況ですので、1) につきましては、アドインを作成し "インポートおよびヘッダ"の下段の情報を取得する必要があります。 弊社にて、このアドインを作成し、以下のようにコード生成テンプレートを カスタマイズしたところ、順番を逆に出力できることは確認済みです。 1. アドインを登録※ 2. コード生成テンプレート「File Impl」を以下のようにカスタマイズする [現在] %ImportSectionImpl% [変更後] $header=%ImportSectionImpl% %REMOVE_DUPLICATES($header,"\n")% 3.コード生成テンプレート「Import Section Impl」を以下のようにカスタマイズする [現在] %fileHeaders% [変更後] %EXEC_ADD_IN("インポートとヘッダ下段情報取得","GetCppHeader",classGUID)% %fileHeaders% ※"インポートおよびヘッダ"の下段の情報を取得するアドインの利用を ご希望の方は、弊社サポートまでご連絡ください。 ○ご報告 上記カスタマイズにより、ご希望通りの出力を得ることができたとの、 ご連絡をいただいております。 |
| スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |




