静的ライブラリ作成時の備忘録

やあ子供たち。日々自分を高めているか。夏休みの宿題はもうやったかな。何事も毎日こつこつと確実に前進することが大事だぞ。それは生きることの意味でもあるんだからよく考えて日々を送るようにしろ。
ところで今日はWindowsの静的ライブラリ(.lib)をVisualC++で作成する際の備忘録だよ。
動的ライブラリ(.dll)を作成する際には、ライブラリとしてエクスポートしたいクラスや関数のシンボルの前に、接頭辞__declspec(dllimport/dllexport)をつけたりしなくてはならないわけだが、静的ライブラリを作成する場合、この接頭辞は無用の長物になる。というか、むしろこの接頭辞があると、プロダクトの(.lib)にシンボルがエキスポートされないから気を付けよう。

#ifdef YES_DLL
#ifdef IS_MYLIB_DEV
#define MYDLL __declspec(dllexport)
#else
#define MYDLL __declspec(dllimport)
#endif
#else
#define MYDLL // 静的ライブラリの場合は空の定義を!
#endif

なんていう記事を書いて、なんか昔そんなメモ書いたなーなんて思っていたら、こーんな記事書いていたので驚いたぞ。
じゃ、今日はこの辺で。チャオ!