Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个为两个类(和主类)创建目标文件的生成文件,其中一个类只是在 .h 文件中定义。在我的makefile中,我有一行说
FileName.o: FileName.h g++ -c FileName.h
但是当我尝试编译它说它找不到 FileName.o
我是否必须创建 FileName.cpp 才能编译它?
您正在某个地方使用 FileName.h 中的类,不是吗?因此,您的 .cpp 文件中至少应包含#include "FileName.h".h 的代码,并且 .h 的代码将使用此 .cpp 进行编译,您无需单独编译 .h 的代码。
#include "FileName.h"
您通常不会尝试自行编译头文件 (.h)。将它包含到一个空的 .cpp 文件中可以让你编译它并生成一个 .o 文件,但它可能不会做太多(如果有的话)真正的好处,除非你把东西放在不真正属于的标题中在标题中。