August 2021
Intermediate to advanced
450 pages
5h 35m
Chinese
一个C++程序包含许多独立开发的部分,例如函数(参见1.2.1节)、用户自定义类型(参见第2章)、类层次(参见4.5节)和模板(参见第6章)等。其管理的关键就是清晰地定义这些组成部分之间的交互。第一步也是最重要的一步是将每个部分的接口和实现分离开来。在语言层面,C++使用声明来表达接口。声明(declaration)指明了使用一个函数或一个类型所需要的东西。例如:
这里的关键点是函数体,即函数的定义(definition)是位于“别处”的。对本例,我们可能也想让Vector的表示位于“别处”,不过稍后将再对此进行介绍(抽象类型,参见4.3节)。sqrt()的定义如下所示:
对于Vector来说,我们需要定义全部三个成员函数:
我们必须定义Vector的函数,而不必定义sqrt(),因为它是标准库的一部分。但是这没什么本质区别:库不过就是一些“我们碰巧用到的其他代码”,它也是用我们所使用的语言设施所编写的。
一个实体(例如函数)可以有很多声明,但只能有一个定义。
Read now
Unlock full access