はじめに
Visual StudioのMFCの設定には以下の2つがあります。
- スタティックライブラリでMFCを使用する
- 共有DLLでMFCを使う
この違いについて知らなかったので調べてみました。
ざっくり言うと
スタティックライブラリでMFCを使用する | 静的リンク | 外部のMFC DLLが不要、ファイルサイズ大きい |
共有DLLでMFCを使う | 動的リンク | 必要に応じて外部のMFC DLLを読み込む。外部DLLを配置したり、インストールする必要あり。ファイルサイズ小さい |
スタティックライブラリでMFCを使用する
MFCを静的リンクして使用します。MFCの必要なコードが包含されるため、ファイルサイズは大きくなりますが、外部のDLLは不要になります。
共有DLLでMFCを使う
MFCを動的リンクして使用します。MFCの必要なコードが包含されず、必要に応じて外部DLLを利用するため、外部 DLL を配置したり、インストールする必要があります。MFCが内包されないため、ファイルサイズは小さくなります。