3

メインの実行可能ファイルと多くのdllを持つ1つのVisualC++アプリケーションがあるとします。2つの構成リリースとデバッグがあります。

ミックスを使用した場合にどのような影響が生じる可能性があるかを知りたいだけです。つまり、リリースメインexeでデバッグdllを使用するか、リリースdllでデバッグexeを使用します。

ありがとう

4

1 に答える 1

2

主な潜在的な問題は、DLLが実行可能ファイルと同じランタイムライブラリを使用しないことだと思います。

つまり、ファイル記述子などのランタイムオブジェクトを共有することはできず、一方にメモリを割り当ててもう一方に解放することもできません。ただし、ベストプラクティスに従い、常にメモリを解放する場合は問題になりません。割り当て元と同じモジュール。

DLLと実行可能ファイルの間で非POD(たとえば、クラスのインスタンス)を共有する場合にも問題が発生する可能性があります。クラスインスタンスがデバッグとリリースの間でバイナリ互換であることが保証されているかどうかはわかりません。

于 2012-09-05T22:16:37.287 に答える