本文介绍了为什么要使用单独的源文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在学习C语言,来自脚本语言背景,非常耐人寻味,也相当令人困惑。

我如何得到这个问题的一个简短故事:

起初我很困惑为什么不能将源文件(.c)包含在另一个源文件中,然后我发现函数声明重复。然后我发现了头文件(.h),并感到困惑,为什么我必须在一个文件中声明一个函数,然后在另一个文件中定义,如果有什么变化,我必须编辑两个文件,所以我开始在头文件中定义函数。然后我发现#ifndef不能跨单独的源文件工作,所以下面是我还找不到答案的问题:

为什么我甚至必须使用单独的源文件?为什么我不能只有一个源文件,并将所有其他代码/函数定义放在头文件中,这样我就可以定义一次内容,并将其包括在最终构建中?

现在不要误会我的意思,我不是在想要发动一场革命,我只是在寻找为什么它不是这样运作的答案。

推荐答案

如果您考虑的不仅仅是小型学习程序,则将代码拆分到多个源文件有几个好处。

代码组织

大型编程项目可能有数百万行代码。你不会想要有那么大的文件的!编辑们可能会在处理这个问题上遇到麻烦。人类将很难理解它。多个开发人员都接触到同一个文件时会发生冲突。如果按用途分隔代码,则处理起来会容易得多。

生成时间

许多代码更改都很小,而编译时间可能很昂贵。编译器通常一次处理一个文件,而不是文件的一部分。因此,如果你做了一个微小的改变,然后不得不重建整个项目,这可能会非常耗时。如果您的代码被分到多个源文件中,则对其中一个源文件进行更改意味着您只需重新编译该文件。

可重用性

通常,代码可以在多个程序中重复使用。如果您的所有代码都在一个源文件中,则必须将该代码复制到另一个文件中以重用它。当然,现在如果它有错误,您有两个地方可以修复它。不太好。

例如,假设您有使用链表的代码。如果将链表代码放入其自己的源文件中,则只需将其链接到另一个程序即可。如果有错误,您可以在一个位置修复它,重新编译,然后重新链接使用它的程序。

这篇关于为什么要使用单独的源文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

11-03 14:31