3

可能重复:
在 C++ 中为什么有头文件和 cpp 文件?

来自 C# 背景,我发现头文件真的很烦人。即使使用 C++11 也需要它们吗?

4

3 回答 3

2

C++ 需要头文件(也需要库),就像 C# 需要引用程序集一样。

于 2012-10-06T12:38:45.970 回答
1

是的,因为它仍然基于 C。您可以回答自己的问题:不要使用它们并尝试在没有它们的情况下进行编译。如果你不能,那么编译器仍然需要它们。

我的意思不是重言式。如果语言规范仍然需要它们,并且编译器与规范匹配,那么更改将是巨大的努力。辩论将需要很长时间。这听起来像是一个没有真正结束的发泄和辩论的问题。

于 2012-10-06T12:37:53.860 回答
0

对,他们是。假设您要开发 DLL 或 SO。开发人员应该如何知道这个库提供了哪些功能?因此,他需要将称为 API 的原型包含到自定义项目中。这样一来,声明和实现就分开了。您声明哪些功能可用,但您始终可以更改内部代码。

于 2012-10-06T12:37:16.207 回答