パスワードを忘れた? アカウント作成
453062 journal

fslashtの日記: リンクしているライブラリによって条件コンパイルしたい

日記 by fslasht

STATUS: 故障中

 汎用のライブラリを作っているとき、利用されるプロジェクトにリンクされているライブラリによって、条件コンパイル出来たら便利かなと思いました。
 特定のライブラリがリンクされていたら、それに関連する機能が有効になるとか。
 もちろん、コンパイルオプションでなにかシンボルを定義して条件コンパイルすればいいんだろうけど、めんどくさいなあと思って。
 コンパイラ(というかプリプロセッサ)からは、リンカへのパラメータなんか知らんということなんだろうけど、VisualStudio限定でいいので、こういう記法アリにならないかなあ。

● #iflink ディレクティブの使用例

 winmm.lib(timeGetTime APIに必要)がリンクされているかによって、条件コンパイルされる。

#iflink winmm.lib
#include "mmsystem.h"
#endif

#iflink winmm.lib
        // 高精度なマルチメディアタイマーを使用
        timeBeginPeriod(1);
        DWORD dwTime = timeGetTime();
#else
        // ライブラリが無いので通常のタイマーを使用
        DWORD dwTime = GetTickTime();
#endif

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

吾輩はリファレンスである。名前はまだ無い -- perlの中の人

読み込み中...