C++温故笔记(二)-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

C++温故笔记(二)

简介: 一、多重继承 1、多重继承是从多于一个直接基类派生类的能力,多重继承的派生类继承其所有父类的属性。 2、在多重继承下,派生类的对象包含每个基类的对象。 3、(多重继承)构造函数初始化式只能控制用于初始化基类的值,不能控制基类的构造次序。

一、多重继承

1、多重继承是从多于一个直接基类派生类的能力,多重继承的派生类继承其所有父类的属性。

2、在多重继承下,派生类的对象包含每个基类的对象。

3、(多重继承)构造函数初始化式只能控制用于初始化基类的值,不能控制基类的构造次序。

4、对于多重继承,派生类的指针或引用可以转换为其任意基类的指针或引用。

5、当一个类继承于多个基类的时候,那些基类之间没有隐含的关系,不允许使用一个基类的指针访问其他基类的成员。(注:该特性可以用于权限访问控制。)

6、假定所有根基类都将它们的析构函数适当定义为虚函数,那么,无论通过哪种指针类型删除对象,析构函数的处理都是一致的。

7、多个基类可能导致二义性。(注:主要是指同名函数,并且不区分参数列表,只要函数名字相同,就会导致二义性。)


二、this指针

1、成员函数具有一个附加的隐含形参,即指向该类对象的一个指针。这个隐含形参命名为this,与调用成员函数的对象绑定在一起。成员函数不能定义this形参,而是由编译器隐含地定义。

2、当我们需要将一个对象作为整体引用而不是引用对象的一个成员时,我们需要在成员函数内部显式引用this。

3、在普通的非const成员函数中,this的类型是一个指向类型的const指针,可以改变this所指向的值,但不能改变this所保存的地址。在const成员函数中,this的类型是一个指向const类型对象的const指针。既不能改变this所指向的对象,也不能改变this所保存的地址。

4、不能从const成员函数返回指向类对象的普通引用。const成员函数只能返回this作为一个const引用。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章
最新文章
相关文章