文件名称:构造与析构-cis_orcad 本地数据库配置方法
文件大小:5.89MB
文件格式:PDF
更新时间:2024-06-28 07:12:06
数据结构 邓俊辉
§2.3 构造与析构
由代码2.1可见,向量结构可在内部维护一个私有的数组_elem[],其容量由私有变量
_capacity指示,其中有效元素的数量(即向量当前的实际规模)则由_size指示。因此,
向量对象的构造与析构主要围绕这些私有变量和数据区的初始化与销毁展开。
2.3.1 默认构造方法
在面向对象的程序设计语言中,所有对象在可使用之前都需要先被系统创建,这一过程
称作初始化(initialization),向量亦是如此。在C++语言中,对象的创建由构造函数
(constructor)来完成,同一对象的构造函数可能重载有多个。由代码2.1可见,此处向
量的默认构造方法是,首先根据创建者指定的初始容量向系统申请空间,以创建内部私有数
组_elem[];若容量未明确指定,则使用默认值DEFAULT_CAPACITY。接下来,鉴于初生的
向量尚不含任何元素,故将指示规模的变量_size初始化为0。
整个过程顺序进行,没有任何迭代,若忽略用于分配数组空间的时间,共需常数时间。
2.3.2 基于复制的构造方法
向量的另一典型创建方式,是以某个已有的向量或数组(的局部或整体)为蓝本做克隆。
代码2.1中虽为此功能重载了多个版本的接口,但无论是已封装的向量或未封装的数组,无
论是整体还是区间,在入口参数合法的前提下,都可归于如下统一的copyElem()方法:
1 template