20/07/20 13:26:52.19 OcNpwLS00.net
>>563
mallocやnewなどの基礎的なライブラリが、Release版とDebug版では異なっている。
DLLの場合、それを意識的にそろえるようにしないといけない。
異なるものが混在してしまうとハングアップする。
また、ライブラリの初期化のタイミングが、DLLが動的リンクされたタイミングや、
アプリの開始のタイミングなど、色々とあるので、それも配慮しないといけない。
どのDLLがどのライブラリを使って、どのタイミングでライブラリを初期化しているか
詳しく把握していないといけない。
単にコンパイラやIDEにDLLのリンクを指示すれば勝手に正しくリンクしてくれるとは限らない。
また、mallocやnewなどの基礎的なライブラリは、絶対ではないが、同じ実体を共有して
使わなければいけないことがある。
あるDLLでnewされたメモリブロックを、mainのプログラムでdeleteするような場合、
同じライブラリの実体でなければ、ヒープ領域が混乱してダウンするだろう。