2

ペツォルドの著書「Programming Windows」第5版から始めてwinapiを学んでいます。

ウィンドウを作成する最初の例には、少し問題があります。本にはこう書いてある

#include "windows.h" (only this one)

しかし、Visual Studio C++ を使用して (Windows 7 64 ビットで) コンパイルすると、

警告 1 警告 C4627: '#include "Windows.h"': プリコンパイル済みヘッダーの使用を検索するときにスキップされました

エラー 2 エラー C1010: プリコンパイル済みヘッダーの検索中に予期しないファイルの終わりが発生しました。ソースに「#include "StdAfx.h"」を追加するのを忘れていませんか?

に変更した後 #include "StdAfx.h"、正常に動作します。

では、なぜ を使用できず、使用Windows.hする必要があるのでしょうかStdAfx.h??

4

2 に答える 2

4

プリコンパイル済みヘッダーを使用するようにプロジェクトを構成しました。その場合、に入れwindows.hstdafx.hstdafx.hPCHを使用するすべてのコンパイルユニットに含めれば、すべてうまくいきます。または、プリコンパイル済みヘッダーを使用しないようにIDEでプロジェクト設定を変更します。

この本は、IDEの気まぐれからの明確さと独立性のために、PCHを想定していないようです。PCHを使用すると、ヘッダーファイルの大きなリストを作成する場合にビルド時間が短縮される可能性がありますが、今のところ、これを使用しない方が簡単です。

于 2012-04-24T16:29:41.623 に答える
-2

この場合、pch を使用しているプリコンパイル済みヘッダーを変更します。

  1. コンパイラの右側にあるソリューションに移動します。
  2. それを右クリックして、
  3. これをクリックして、プロパティを選択します。
  4. 次に、構成プロパティを選択し、ボックスの左上隅にある [すべて] を選択します。
  5. [OK] を押します。
  6. プロジェクトを選択して右クリックします。
  7. プロパティ オプションを選択します。
  8. 構成に移動して c/c++ を選択し、推奨ヘッダーをクリックして、この選択をクリックします
  9. プリコンパイル済みヘッダーを選択しません。
  10. [OK] を押します

これで問題は解決しました

于 2019-03-02T06:41:21.763 に答える