053day(成员对象和封闭类,常量对象,常量成员函数)

172210704111-陈国佳总结《2017年12月2日》【连续53天】

标题:成员对象和封闭类,常量对象,常量成员函数;

内容:A.

写了两道PAT(乙)题,虽然题目简单,但还是费了一番折腾;

B.1)成员对象和封闭类:

有成员对象的类叫  封闭类:

任何生成封闭类对象的语句,都要明确对象中的成员对象的初始化;

做法:通过封闭类的构造函数的初始化列表;

class A{private B s;C t;

public:   A(int a,int b,int c)

};

A::A(int a,int b,int c):s(a),t(b,c){};

初始化列表的参数可以是:任意复杂的表达式,包括函数,变量(有定义即可);

封闭类:

a)对象生成时,先执行所有对象成员的构造函数,然后才执行封闭类的构造函数;

b)对象成员的构造函数调用次序与类中对象成员的说明一致,与初始化列表中出现的次序无关;

c)封闭类对象消亡时,先调用封闭类的析构函数,调用的次序与构造函数的调用次序相反;

复制构造函数:

封闭类的对象,如果是用默认复制构造函数初始化的,那么它里面包含的成员对象,也会用复制构造函数初始化;

2)常量成员函数:

当在某个对象前加const关键字时,这个对象只能使用构造,析构,常量成员函数;

在类的成员函数说明后面加const关键字,就是常量成员函数;

常量成员函数内部不能改变属性的值,也不能调用非常量成员函数(非常量成员函数可能改变值);

重载:当两个函数名字和参数都一样时,但一个加了const,可认为是重载,而非重定义;

mutable成员变量:可在const成员函数中修改;

常引用:在函数中引用对象,可以避免复制构造函数的执行,而为了避免对象被改变,可以对对象进行常引用

const &     。



明日计划:友元;





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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值