UE4和C++ 开发-头文件(.h) 和实现文件(.cpp)区别

.h文件和.cpp文件是C++程序中的两种不同类型的文件。

.h文件通常包含类、函数和变量的声明,

而.cpp文件包含这些声明的实现。

.h文件中的声明通常是公共的,可以被其他文件包含和使用。.cpp文件中的实现通常是私有的,只能在该文件中使用。

在编译时,.h文件被包含到.cpp文件中,以便编译器可以检查函数和变量的声明是否正确,并将它们与实现匹配。

1、简单讲,一个Package就是由同名的.h和.cpp文件组成。当然可以少其中任意一个文件:

只有.h文件的Package可以是接口或模板(template)的定义;

只有.cpp文件的Package可以是一个程序的入口。

2、.cpp是C++文件的扩展名,.cpp主要是进行函数定义的,类中函数的声明和调用是在.h中的,.h文件主要是把函数进行封装,在写很多代码的时候,用上.h有很好的作用,这时候我们只要给对方公司*.h文件就行了,这样既提供了必要的信息,又保护了我们的核心代码。在.cpp中对.h文件进行调用时,要用#include.xxxh。建议按照**.h *.cpp配对分开写。

3、.cpp内用于:

(1)函数实现(包括全局函数(默认)、静态函数)。

(2)全局变量、静态变量定义。

(3)静态函数声明,静态变量声明。(指定编译单元内部使用的函数和变量)

4**、.h内用于:**

(1)全局函数声明,注意静态函数不包括在内。

(2)全局变量声明,无静态变量。

三、总结:
头文件(.h)主要用于声明函数和类的接口,不包含具体实现代码。
源文件(.cpp)主要用于实现头文件中声明的函数和类的具体代码。
将声明和实现分开,可以使得代码结构更加清晰,有助于提高代码的可维护性和可读性。同时,头文件的存在使得多个源文件可以共享和重复使用同一组声明,提高了代码的模块化和复用性。

相关推荐
悠仁さん15 小时前
【C++】AVL 树
c++
wuminyu15 小时前
JVM规范学习总结:解释器与JIT编译器如何处理JVM字节码
java·linux·c语言·jvm·c++
小徐不徐说15 小时前
序列化与反序列化:把 C++ 对象可靠地保存下来
开发语言·数据库·c++·php
ragnwang15 小时前
Notes: Python pybind11 import C++ module
开发语言·c++·python
Wang's Blog16 小时前
Java 项目实战: 交友项目 - 搜索附近的功能概述和分析
java·开发语言·交友
骑着蜗牛撵大象32716 小时前
大模型 Agent 的沙箱护栏:gVisor 隔离、出口白名单与审计闭环
java·开发语言·jvm·安全·agent沙箱·gvisor·microvm
Dxy123931021617 小时前
JS DES 加密详解
开发语言·javascript·arcgis
充值内卷17 小时前
我给桌面加了个鱼缸:C++ 写后端,WebView2 里养一座 Three.js 小岛
开发语言·javascript·c++
云和数据.ChenGuang17 小时前
深入解析 Python 的 dir():从用法到 CPython 源码实现
开发语言·人工智能·python·langchain
nice_lcj52018 小时前
深入理解 Java 反射:从 Class 对象到方法调用(含性能实测 + 迷你 IOC 实战 + 面试考点)
java·开发语言·后端·面试