如何在一个cpp文件中引用另外一个cpp文件中定义的类
写了一个工程,包含两个cpp文件A.cpp和B.cpp,两个头文件A.h和B.h。A.cpp中定义了一个类A,B中要引用到此类,但是生成时总是有“error LNK2019: 无法解析的外部符号”这样的错误,提示找不到类A的实现,搞了很久没解决。
在B中include的了A.h, 并且A.cpp、B.cpp、A.h和B.h都定义在同一个工程中。尝试了在工具->选项->VC++目录的中包含了A.obj所在的路径,并且在项目属性->链接器->输入->附加依赖项中添加了A.obj,但是错误还是一样。
大概的代码是这样的
//A.h
class A{
...
void p();
...
};
//A.cpp
#include"A.h"
void A::p(){
...
}
//B.cpp
#include"A.h"
int main{
A a;
a.p();
return 0;
}
这些文件都在一个工程中,但是一生成就有"error LNK2019: 无法解析的外部符号"的错误,提示找不到函数p()的实现.
如果把#include"A.h"改成#include"A.cpp",就没有这个问题了,但是#include"A.cpp"这个写法太少见了,不知道这个问题正确的解决方法应该是怎样的