类,构造函数

107 篇文章 1 订阅

https://zhidao.baidu.com/question/1579776576882637420.html

构造函数的方法名必须与类名相同。
构造方法是一种特殊的方法,具有以下特点。
(1)构造方法的方法名必须与类名相同。
(2)构造方法没有返回类型,也不能定义为void,在方法名前面不声明方法类型。
(3)构造方法的主要作用是完成对象的初始化工作,它能够把定义对象时的参数传给对象的域。
(4)构造方法不能由编程人员调用,而要系统调用。
(5)一个类可以定义多个构造方法,如果在定义类时没有定义构造方法,则编译系统会自动插入一个无参数的默认构造器,这个构造器不执行任何代码。

(6)构造方法可以重载,以参数的个数,类型,或排列顺序区分

 

class fc{
fc();
~fc();
.....
}
fc();它叫构造函数,就是用来初始化变量的,它是用系统自动调用的,要是楼主没有写构造函数的话,系统会为之生成一个默认的构造函数,它的调用就是在声明变量的时候系统就自动地隐式调用。也许楼主会问为什么要初始化呢??
其实c++中类的数据成员的访问不是有三种情况嘛(小弟就不说了),对于一般的数据成员它的访问是由类的函数成员才能访问的,类的对象是不能直接访问的,比如:
class fc
{
pbulic:
fc();
~fc();
.....
protected:
int x;int y;
}
fc obj;要使用obl.x是错误的,但可以用构造函数进行初始化啊,比如:fc(){x=0;y=0;}

对于~fc();它叫析构函数,与前面的构造函数是一对的,而它的作用正好和构造函数相反,前面进行了初始化,那么后面就得进行“扫尾工作”,它是在对象的生存期即将结束时被系统调用的!!!!

 

1、这种函数叫构造函数,就是用来初始化变量的,它是用系统自动调用的,要是楼主没有写构造函数的话,系统会为之生成一个默认的构造函数,它的调用就是在声明变量的时候系统就自动地隐式调用。
2、定义C++构造函数:
C++语言为类提供的构造函数可自动完成对象的初始化任务,全局对象和静态对象的构造函数在main()函数执行之前就被调用,局部静态对象的构造函数是当程序第一次执行到相应语句时才被调用。然而给出一个外部对象的引用性声明时,并不调用相应的构造函数,因为这个外部对象只是引用在其他地方声明的对象,并没有真正地创建一个对象。
C++的构造函数定义格式为:
class <类名>
{
public:
<类名>(参数表)
//...(还可以声明其它成员函数)
};
<类名>::<函数名>(参数表)
{
//函数体
}
如以下定义是合法的:
class T
{
public:
T(int a=0){i=a;}//构造函数允许直接写在类定义内,也允许有参数表。
private:int i;
};

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值