まず、グローバル変数が悪いことを知っています:)しかし、私はなぜそれを使う必要があるのか正当な理由があります。DLLのグローバル変数の使用に関する制限(Windowsの場合)
私はDllMain(LoadLibrariesなし、COM初期化なしなど)で実行できるものに非常に厳しい制限があることを知っています。
グローバル変数がDllMain DLL_PROCESS_ATTACHの直前で初期化されていることがわかりました。
グローバル変数の初期化中に同じ制限がありますか?
私はMicrosoftの記事を見つけました:http://msdn.microsoft.com/en-us/library/988ye33t ただし、制限事項に関する詳細はありません。
私はまた、別のStackOverflowの質問を見た:What happens to global variables declared in a DLL?ここ はそこからの抜粋である「DllMain内で行うことを禁止されているものがありますそれらのものは、コンストラクタで、あまりにも、禁じられおそらくです。」
しかし、commentorのように、そのような制限が実際に存在するかどうかはわかりません。
この件に関する情報はありがとうございます。
ありがとうございます:)それは推測の余地を残さない完全に明確な答えです。 –