构造函数与析构函数

本文介绍了C++中的构造函数和析构函数,包括它们的作用、特性及调用时机。构造函数用于对象创建时初始化,而析构函数在对象生命周期结束时自动调用以清理资源。构造函数可以重载,析构函数则是唯一的,两者都没有返回类型。对象的生存期分为局部、全局和动态创建三种情况,不同情况下构造与析构函数的调用规则有所不同。
摘要由CSDN通过智能技术生成

数据成员多为私有的,要对它们进行初始化,必须用一个公有函数来进行。同时这个函数应该在且
仅在定义对象时自动执行一次。称为构造函数(constructor) 。
构造函数用途:

1)创建对象

2)初始化对象中的属性

3)类型转换

构造函数的定义与使用
构造函数是特殊的公有成员函数(在特殊用途中构造函数的访问限定可以定义成私有或保护),其
特征如下:
1.函数名与类名相同。
2.构造函数无函数返回类型说明。注意是没有而不是void,即什么也不写,也不可写void。实际上
构造函数有返回值,返回的就是构造函数所创建的对象。
3.在程序运行时,当新的对象被建立,该对象所属的类构造函数自动被调用,在该对象生存期中也
只调用这一次。
4.构造函数可以重载。严格地讲,类中可以定义多个构造函数,它们由不同的参数表区分,系统在
自动调用时按一般函数重载的规则选一个执行。
5.构造函数可以在类中定义,也可以在类中声明,在类外定义。
6.如果类说明中没有给出构造函数,则C++编译器自动给出一个缺省的构造函数:
类名(void) { }
但只要我们定义了一个构造函数,系统就不会自动生成缺省的构造函数。只要构造函数是无参的或
者只要各参数均有缺省值的,C++编译器都认为是缺省的构造函数,并且缺省的构造函数只能有一个 。

class Complex
{
   int Real; //实部
   i
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值