アップデート:
ヘッダー ファイルに stdafx.h をインクルードすると、どのような影響がありますか?
Linux/Eclipse CDT で C++ プロジェクトを開始し、それを Visual C++/Windows にインポートしました。
Visual C++ では、コンパイルを高速化するためにプリコンパイル済みヘッダーの使用を開始し、stdafx.cpp と stdafx.h を定義しました。
ここに私のstdafx.hがあります
#pragma once
#include <string>
#include <vector>
#include <map>
...
そして私のstdafx.cpp
#include "stdafx.h"
すべての .h および .cpp ファイルには、次のものがあります。
#pragma once //if in a header file
#include "stdafx.h"
リリースとデバッグの両方で、「プリコンパイル済みヘッダーの作成 (/Yc)」があります。デバッグモードでは正常にコンパイルされましたが、リリースモードではレポートが継続されます
error LNK2005: ___@@_PchSym_@00@UfhvihUaszlaDUwlxfnvmghUnnlUhixUnnlPeDUnnlPeDUivovzhvUvmgrgbOlyq@ already defined in A.obj
両方を「プリコンパイル済みヘッダーを使用する」に切り替えると、デバッグとリリースの両方が表示されます
fatal error C1854: cannot overwrite information formed during creation of the precompiled header in object file:
誰が何が起こっているのか知っていますか?