人民邮电出版3 第十六章类的工具
人民邮电出版社 第十六章 类的工具
人民邮电出版3 16.1构造函数和析构函数 162函数重载 163运算符重载 164对象的动态存储管理
人民邮电出版社 16.1 构造函数和析构函数 16.2 函数重载 16.3 运算符重载 16.4 对象的动态存储管理
人民邮电出版 161构造函数和析构函数 当我们建立了一个类并说明了这个类的对象 后,对象的初始状态,即对象数据成员的值,是 不确定的 构造函数属于类的成员函数。构造函数的函 Y3数名与类名同。它不需要函数类型说明,它也没 有返回值。 如果在类定义的成员函数中,没有说明构造 函数,系统将提供一个构造函数。 析构函数( destructor)是系统提供的另一个特 殊成员函数,它的作用与构造函数相反,是消除 一个对象,释放分配给对象的内存空间。析构函 数的函数名是在类名前加一个“~”号
人民邮电出版社 16.1 构造函数和析构函数 当我们建立了一个类并说明了这个类的对象 后,对象的初始状态,即对象数据成员的值,是 不确定的。 构造函数属于类的成员函数。构造函数的函 数名与类名同。它不需要函数类型说明,它也没 有返回值。 如果在类定义的成员函数中,没有说明构造 函数,系统将提供一个构造函数。 析构函数(destructor)是系统提供的另一个特 殊成员函数,它的作用与构造函数相反,是消除 一个对象,释放分配给对象的内存空间。析构函 数的函数名是在类名前加一个“~”号
人民邮电出版 1611不带参数的构造函数 不带参数的构造函数也称为缺省构造函数。如 果程序中没有说明构造函数,编译程序将提供一个 缺省构造函数,它不做任何操作,就如同说明了一 个不带参数而且函数体为空的构造函数 如果需要缺省构造函数,必须用户自己定义。 例如,我们定义了类 counter,函数 counter(void) 便是类 counter的缺省构造函数。 调用构造函数的一般形式为: 类名对象名;
人民邮电出版社 16.1.1 不带参数的构造函数 不带参数的构造函数也称为缺省构造函数。如 果程序中没有说明构造函数,编译程序将提供一个 缺省构造函数,它不做任何操作,就如同说明了一 个不带参数而且函数体为空的构造函数。 如果需要缺省构造函数,必须用户自己定义。 例如,我们定义了类counter,函数 counter(void); 便是类counter的缺省构造函数。 调用构造函数的一般形式为: 类名 对象名;
人民邮电出版3 16.12析构函数 个对象进入其代码块时才建立,离开它的 代码块时,就被撤消。在很多情况下,一个对象 被撤消时,也要执行一些操作,如释放它所占用 的内存单元。析构函数就是用来自动隐式地作 这项工作的
人民邮电出版社 16.1.2 析构函数 一个对象进入其代码块时才建立,离开它的 代码块时,就被撤消。在很多情况下,一个对象 被撤消时,也要执行一些操作,如释放它所占用 的内存单元。析构函数就是用来自动(隐式地)作 这项工作的