C++中为什么要头文件和源文件分开写呢?

供稿:hz-xin.com     日期:2025-01-13
C++中为什么要头文件和源文件分开写

系统头文件 是现成的,原来就写好了在那里,是 可以 公用的,可以多次反复使用的。自己写的头文件,如果 打算 可以 多个程序 共享,也可以 单独存放,要用时,用 #include 把它 包含进来。如果高兴,把它 写在 源程序里也没什么不可以。
当程序比较大,函数,语句很多是,把大东西 分成 小块 ,易于 查错,易于修改,方便 阅读。把 头文件 分为单独的块, 能起这个作用。

因为c++是从c扩展出来的, 而c是个几十年前的语言, 那时候电脑内存小得可怜, 编译器很难直接从源文件里直接把声明的内容都分离出来, 你手动写好头文件把声明先列好的话编译器干的活就少很多, 编译器实现起来也更简单
所以基本上只是历史原因, 分开来写之后虽然也有一些好处但总得来说就是更麻烦

一般都是代表一个基本功能的源文件引用相应的头文件。 一个 相关功能的模块可能有若干对源文件和头文件组成。这是基于组件编程的核心。 在我看来,他的好处是巨大的,是java不可比拟的,也是不可复制的: c语言中头文件中一般定义了函数的声明、结构体的定义、宏定义。(常量和全局变量最好放到源文件中) 1) 从业务扩展性上看:头文件中放函数的声明,函数由源文件实现,这就是将面向接口编程:接口和实现分开,这在面对业务变更频繁的需求中技术实现的好处是显而易见的--只要定义出良好地、扩展性高的接口,实现是可以很方便的更换。 2) 从程序架构上看:代码在在大型程序中 需要分成不同的模块,单一模块中又可能分为不同的业务功能单元,他们间有很多相互的调用。 头文件中的方法声明、结构体定义、宏就都可以充当这部分的模块与模块间、业务功能单位间的接口调用。模块与模块间,功能单元与功能单元间都是面向接口的调用,耦合性低,这正是基于组件编程的核心思想。 3) 从某些技术角度实现上看:头文件可通过宏定义来保证类定义、结构体定义、宏定义的唯一性。确实很方便,不容易出错。 在用makefile编译程序时,各个功能单元单独编译,构成中间文件.最终这些中间文件链接成可执行程序,在这些中间文件中重复引用同一头文件是不可避免的。但如果头文件有保护性编程就可以很容易保证类、结构体、宏定义的唯一性 ----最终链接成可执行程序时,可执行程序中代码区中只会有唯一的类、结构体、宏的定义,其他都因为不满足唯一性保护失效。这样的实现是不是很‘优雅’:)))? 我不知道你是否是这样认为,至于我,我是这样认为,haha~

VC++6.0中的c\/c++header和c++source有什么区别?
其实可以把头文件写到源文件里作为一个源文件;之所以要分开来,是为了方便维护和使用.

我下了一些vc++程序是用.h和.cpp分开写的怎样运行
首先要明白这些文件时什么文件,再用编译器,例如:VC6.0,Dev C++等编译环境中运行,文件扩张名是.h,代表的话头文件,一般是书写一些函数原型,以及一些在整个程序中常用到的结构体,频繁使用的函数说明,定义等等;文件扩张名为,cpp的,是C++中的源文件,也是最常用到的文件,每建立一个工程都要至...

源文件和头文件的关系
简单理解,头文件就是在源文件头部用来被包含的文件。这里的包含是#include预处理命令,包含的过程就是把头文件的文本完整地复制到源文件中的对应位置,然后删除此行#include预处理命令。由于文件包含是预处理器在翻译过程之前完成的,因此和整个编译过程没有必然联系,一个源文件在与处理过程中可以进行任意...

VC++中的source files,head files和recource files分别指的是什么...
head files :头文件,指 *.h recource files:资源文件,位图、图标等,你这是非窗口程序,用不到。

VC6.0在工程里新建文件,想写C语言程序,要怎么选?
head file 头文件 例如 abc.h 这是头文件, 头文件的主要作用是定义,而.cpp 是实现用的, 假如 头文件中 定义一个类, 那么这些类的成员函数的实现在.cpp 中实现, 当然你也可以在头文件中实现,但是这就是规范的问题,分开有好处

visual c++ 6.0 中各种 #include<> 代表什么意思
就是包含头文件,譬如最简单的#include<stdio.h> 意思就是把头文件stdio.h包含到源代码中,至于为什么这样做,因为stdio.h标准输入输出头文件,自然要包含到源代码中,否则无法实现输入输出的功能;各种包含,只不过是为了各种功能的实现!

请问VC++6.0里的MAIN文件应该写在源文件里还是头文件里?
当然是源文件里;将class文件放在头文件里;因为程序运行时执行的第一个函数就是main函数 所以只能放在源文件里才能运行 include \\"头文件\\"int main(){ return 0;}

c++中.h是什么文件,怎么打开查看
一、头文件概述 在C++编程中,.h文件通常包含类的定义、函数声明、宏定义等。这些文件主要用于声明那些将在多个源文件中使用的变量、函数、类等,以便在编译时能够正确链接和使用。它们是项目代码组织的重要组成部分。二、如何打开查看.h文件 要查看.h文件的内容,可以使用文本编辑器或集成开发环境打开。

如何用VC++6.0编译连接运行多文件C程序?
在使用VC++6.0编译连接运行多文件C程序的过程中,首先建立一个空的console(控制台)工程。在工程界面左侧会看到两个分类:头文件和源程序文件。将你的.h文件和.c文件分别放置于工程目录下。刷新左侧的file view视图,此时应该能看见你所放置的文件。双击打开含有关键函数的源文件,选择菜单栏中的“...

VC++中头文件".h"和源文件".cpp"的关系问题
.h不参加编译。就是把那些申明放.h里边,程序条理清晰一些。我有a.h,a.cpp 我的b.cpp只要包含了a.h,也就把a.cpp中可以外部调用的申明了一便。