gpt4 book ai didi

C++ 包含和 Makefile

转载 作者:太空宇宙 更新时间:2023-11-04 15:09:28 25 4
gpt4 key购买 nike

关于使用 C++ 头文件和 makefile,我有两个问题。我知道我拥有所有部件,只是不确定如何将它们组合在一起。

我有以下文件:

main.cpp
Point.cpp
Point.h

Point.h 声明了我的简单 Point 对象,定义在 Point.cpp 文件中。然后在 main() 中我想创建并使用 Point 对象。

我是否需要在 Point.cpp 文件中包含 Point.h 文件,还是 Makefile 会处理这些内容?此外,使用 Point 对象的 main.cpp 文件:我需要包含 Point.cpp 还是在 Makefile 中完成/可以完成的事情?

这里的每个文件应该包含什么,我的 Makefile 应该是什么样的?

//从Linux平台独占//

最佳答案

Makefile 只不过是在某些文件过时时运行某些命令的一种方式。 make 程序对 C++ 几乎一无所知。

您应该在 main.cpp 和 Point.cpp 中#include "Point.h"。如果你想确保 make 在你编辑文件时正确地重建你的程序,你应该明确声明 main.o 和 Point.o 作为 Point.h 的依赖。

这是一个相当简单的例子:

all : point_app

point_app : Point.o main.o
$(LINK.cc) $^ $(LOADLIBES) $(LDLIBS) -o $@

Point.o : Point.h

main.o : Point.h

gcc/g++ 和 make 有一些技巧可以让您自动生成这些头文件依赖项,但是我已经太久没有使用它们了,无法就它们的使用提供适当的建议。您可以查找 gcc 的 -M... 系列选项的文档作为起点。

关于C++ 包含和 Makefile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4990894/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com