我有一个makefile,它为两个类(和main)创建目标文件,而其中一个类只是在.h文件中定义。在我的makefile文件中,有一行显示
FileName.o: FileName.h
g++ -c FileName.h
但是当我尝试编译时说它找不到FileName.o
是否必须创建FileName.cpp才能进行编译?
最佳答案
您正在某个地方使用FileName.h中的类,不是吗?因此,至少您的.cpp文件之一应包含#include "FileName.h"
,并且.h的代码将使用此.cpp进行编译,而您无需单独编译.h的代码。