C++ 将现有cpp文件添加到visual studio C++;项目
我尝试过:“源文件>添加>现有项”并选择了.cpp/.h文件,但仍然出现链接器错误(可能是因为我的.cpp文件未传递到编译器): 错误LNK2001:未解析的外部符号“struct Mem Mem” (?mem@@3UMem@@A)C++ 将现有cpp文件添加到visual studio C++;项目,c++,visual-studio,visual-studio-2008,linker,C++,Visual Studio,Visual Studio 2008,Linker,我尝试过:“源文件>添加>现有项”并选择了.cpp/.h文件,但仍然出现链接器错误(可能是因为我的.cpp文件未传递到编译器): 错误LNK2001:未解析的外部符号“struct Mem Mem” (?mem@@3UMem@@A) 如何修复它?我找到了解决方案。我在头文件中有extern struct Foo,我忘了在一些.cpp文件中给出一个实际的定义。可能有一百种不同的东西-首先检查它是否被编译(例如,在这里添加一个#error give error!-这会导致错误发生)。如果这不能让事情
如何修复它?我找到了解决方案。我在头文件中有
extern struct Foo
,我忘了在一些.cpp文件中给出一个实际的定义。可能有一百种不同的东西-首先检查它是否被编译(例如,在这里添加一个#error give error!
-这会导致错误发生)。如果这不能让事情变得明显,那么也许可以发布更多关于你正在做什么的细节?@matstpeterson:确实如此。在我试图添加到项目的两个文件中都给出此消息:filename.cpp(8):致命错误C1189:#错误:此处给出错误代码>那么,它显然正在编译。接下来检查它是否在link命令中-删除#error
行并添加一行,例如extern int KerFlunk代码>在全局范围内-如果您得到一个缺少KerFlunk
的错误,那么链接器正在工作,您只是缺少适当的声明-没有向我们显示任何代码,我们只能猜测。extern int KerFlunk代码>未给出错误消息。错误数与之前相同:2,关于未解析的外部符号
。我应该显示什么代码?我的意思是,我创建了一个新项目,并试图将两个现有项目添加到当前项目中,但它在链接器级别的编译器上失败了。也许您需要实际“使用”KerFlunk
(例如,在某些代码中添加int x=KerFlunk
),我很确定问题出在您的实际代码中。首先显示struct Mem的声明和定义代码>