メイン関数の開始前に、派生CWinAppのコンストラクタを呼び出す必要があるのはなぜですか?私はこの動作を強制的に技術的な理由を探していますMFCではなぜCWinAppのグローバルインスタンスを作成する必要がありますか?
int WinMain()
{
CMainFrame* pMainFrame = new CMainFrame;
// etc ...
}
:
は、なぜそれが何かすることはできません。
編集:
明確にするには - 私がWin32 APIをMFCなしで使用している場合、メインウィンドウはWinMain内に作成されますが、違いは何ですか?
おそらく 'CWinApp'のコンストラクタが' main'関数が実行される前に*実行されるようにします。しかし、私は実際にはわからない。私はそれが動作するかどうかを確認するためにこれを試みたことはありません。あなたは? –
@CodyGrayはい私は試みた。 AfxWinMain内でアプリケーションがクラッシュする –
ああ、Fredericの答えが予測する通りです。 'CWinApp'のコンストラクタは' AfxWinMain'によって期待されるいくつかの状態変数の値を設定しています。 –