2006-01-01から1ヶ月間の記事一覧

CppUnit テストをプラグイン化

"CppUnit 1.10.2のTestPlugInの作成法について" テスト実行時のカレントフォルダは DLL のロード位置に設定されるらしい。テスト用データの位置を相対パスで書いていたので、これは重要。 CppUnit-1.10.2 の TestPlugInRunner を使っているけど、なぜか setu…

Doxygen とプリプロセッサ

上の話題に関連して、 C/C++ プリプロセッサを Ruby で実装した人がいないか探していたら、こんなページを発見。 Sunday Lab Blog - C マクロとリバースエンジニアリング クラスのメンバメソッドをマクロで宣言すると、 Doxygen なんかで展開したときに解析…

プリプロセッサ代わりに Ruby を使う

後輩からこんな質問を受けました。 「こういうマクロの展開結果を 16 進数で出したいんですけど、簡単な方法ありませんか?」 (EVENT_DEF.h) #define ID_MODULE1 8 #define PRIORITY 2 #define EVENT_A_CHANGE_STATE ((2<<24)+( 0<<16)+(ID_MODULE1<<8)+PRIO…