首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >.cpp文件和.h文件有什么区别?

.cpp文件和.h文件有什么区别?
EN

Stack Overflow用户
提问于 2009-05-17 20:54:48
回答 7查看 149.2K关注 0票数 78

因为我制作了.cpp文件,然后将它们转换成.h文件,所以我能找到的唯一区别是你不能包含.cpp文件。我错过了什么区别吗?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2009-05-17 20:57:28

C++构建系统(编译器)不知道有什么不同,所以这都是约定之一。

约定是.h文件是声明,而.cpp文件是定义。

这就是为什么.h文件是#included的原因--我们包括声明。

票数 76
EN

Stack Overflow用户

发布于 2009-05-17 20:59:24

.cpp文件是编译单元:它是将被编译(在C++中)的真正的源代码文件。

包含(头)文件是将在出现# .h预编译器指令的.cpp文件中虚拟复制/粘贴的文件。一旦将.cpp代码插入到.cpp代码中,就可以开始编译headers了。

票数 31
EN

Stack Overflow用户

发布于 2009-05-17 21:00:17

.h文件或头文件用于在类声明中列出可公开访问的实例变量和方法。.cpp文件或实现文件用于实际实现这些方法和使用这些实例变量。

之所以将它们分开,是因为.h文件不会被编译成二进制代码,而.cpp文件会被编译成二进制代码。以一个库为例。假设你是作者,你不希望它是开源的。因此,您将编译后的二进制库和头文件分发给您的客户。这使他们可以轻松地查看有关您的库类的所有信息,而无需查看您是如何实现这些方法的。它们更多的是为使用你的代码而不是编译器的人准备的。正如前面所说的:这是惯例。

票数 22
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/875479

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档