我只是想知道.cpp和.h文件之间的区别是什么?我会用什么头文件(.h)以及我将使用什么cpp文件?CPP | .h文件(C++)
回答
一般来说,它真的可能是少了很多一般:
.H(头)文件是被多次使用的东西的声明,并在其他文件#include
d
的.cpp(实现)文件是为别的,几乎从来没有#include
d
好吧,看看我是否有这个权利;如果我有一个类,比如说InventoryClass,我会把它放在一个.h文件中,然后从一个.cpp文件中调用它的方法。 谢谢你的回答。 :) – 2010-01-02 00:36:54
你通常会在头文件中放入类的声明(即:我有这些字段,方法等)。每种方法都可以在cpp文件中实现。 – 2010-01-02 00:37:59
@ baeltazor是的,这就是主意。 – James 2010-01-02 00:39:43
按照惯例,.h文件是你#include的东西。 CPP文件是您添加到项目中以编译为单独的对象文件,然后传递给链接器的内容。
谢谢帕维尔。 – 2010-01-02 00:37:31
.h文件被称为头文件。你通常把你的界面放在那里(你想公开的东西)。 cpp文件是你实际实现你的界面的地方。
技术上,没有区别。 C++允许您将代码放入任何文件中,并且可以使用任何格式。
按照惯例,你把你的声明(基本上是构成你的API的)放在.h文件中,并且被称为“标题”。 .cpp文件适用于代码的实际“内核” - 实现细节。
通常情况下,您的项目中的其他文件(以及其他项目,如果您正在创建库)中包含#include
的头文件,因此编译器可以获得编译所需的接口。 .cpp文件中的实现通常是实现的,因此每个.h文件都有一个.cpp文件“填充”实现。
首先,它们都是包含C++编译器或预处理器代码的文本文件。就系统而言,没有区别。
按照惯例,不同的文件扩展名被用来表示文件的内容。在C程序中,您倾向于在C++ .hpp和.cpp中看到.h和.c文件以达到相同的目的。
第一组叫做头文件的.h和.hpp文件主要包含非执行代码,例如常量和函数原型的定义。它们通过#include
指令被添加到程序中,并且不仅由程序或库使用,而且由其他程序或库使用,用于声明接口点和合同定义值。它们也用于设置在编译不同操作系统时可能会改变的元数据。
第二组.c和.cpp文件包含库或程序代码的执行部分。
纠正我,如果我错了,但
当你#包括的东西,它更多或更少的刀片整个包含文件到一个与包括命令;也就是说,当我包含“genericTools.cpp”中的“macros.h”时,“macros.h”的全部内容将被放置在“genericTools.cpp”中。这就是为什么你需要使用诸如“#pragma once”或其他保护措施,以防止两次包含同一个文件的原因。
值得注意的是,模板化代码需要完全在您将要包括在其他地方的文件中。(我不确定 - 可以从包含的文件中忽略模板专业化,并像正常功能那样链接)
.cpp
即实现文件是我们的实际程序或代码。 当我们需要在代码中使用不同的内置函数时,我们必须包含头文件.h
文件。
这些.h
文件包含我们使用的内置函数的实际代码,因此我们可以简单地调用相应的函数。
因此,在我们编译我们的代码时,我们可以看到比我们实际编码更多的行编译数,因为不仅我们的代码被编译,而且随着函数的(代码)(包含在.h
文件中)也被编译。
- 1. C++ .h&.cpp文件 - 原型错误
- 2. C++ .h和.cpp文件分开
- 3. C++ - 的.h和.cpp
- 4. #include .h或.cpp文件?
- 5. 从.h文件生成.cpp源文件
- 6. C++ - 从.h文件获取.cpp文件中的类变量
- 7. 的Visual C++,组织的.h和.cpp文件中的文件夹
- 8. 从.ui文件生成.h和.cpp
- 9. 使用C++库,正值的.cpp和.h文件
- 10. C++创建在单独的.cpp和.h文件
- 11. 我可以在c#项目中添加.h和.cpp文件吗?
- 12. 设计.h和一个.cpp文件C++:错误
- 13. 我应该用C++分开cpp和h文件吗?
- 14. 何处下载C++ STLsource代码.h和.cpp文件?
- 15. Linux操作系统Ubuntu C++的.h和.cpp文件
- 16. 的.h文件包含在头文件和cpp文件
- 17. 从C/cpp文件
- 18. C++ include .h包含.cpp同名吗?
- 19. 自动从.cpp/.c中生成.h
- 20. C++继承 - 覆盖函数,包括使用“::”s,.h文件和.cpp文件
- 21. C++如何正确地将.cpp分割成.cpp和.h
- 22. 为这个.cpp文件创建一个h文件
- 23. 所有.cpp文件都依赖于两个.h文件?
- 24. 链接共享.h文件的2个cpp文件
- 25. 从源文件(.cpp和.h)生成.ui文件
- 26. QT创建者:为.cpp&.h文件添加文件夹
- 27. 从.h和.cpp进行条件编译
- 28. C++源代码文本编辑器与.h .cpp同步支持
- 29. (C++).h文件中的整个类?
- 30. 如何创建与.h文件和几个main.cpp的.cpp文件生成文件没有.H
作为一个建议,C语言头文件使用'h'文件,C++语言文件使用'hpp'或'hxx'。 C++源文件可以包含C语言头文件,但C源文件不能包含C++头文件。因此,如果头文件包含特定于C++的声明或定义,请使用“hpp”或“hxx”扩展名来命名。 – 2010-01-02 00:37:48