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引用。

目录
相关文章
|
2月前
|
Java 编译器 C++
C++入门指南:类和对象总结笔记(下)
C++入门指南:类和对象总结笔记(下)
30 0
|
2月前
|
存储 编译器 C语言
C++入门: 类和对象笔记总结(上)
C++入门: 类和对象笔记总结(上)
34 0
|
4月前
|
设计模式 安全 编译器
Effective C++55 笔记
Effective C++55 笔记
24 0
|
12天前
|
安全 Java 程序员
【C++笔记】从零开始认识继承
在编程中,继承是C++的核心特性,它允许类复用和扩展已有功能。继承自一个基类的派生类可以拥有基类的属性和方法,同时添加自己的特性。继承的起源是为了解决代码重复,提高模块化和可维护性。继承关系中的类形成层次结构,基类定义共性,派生类则根据需求添加特有功能。在继承时,需要注意成员函数的隐藏、作用域以及默认成员函数(的处理。此外,继承不支持友元关系的继承,静态成员在整个继承体系中是唯一的。虽然多继承和菱形继承可以提供复杂的设计,但它们可能导致二义性、数据冗余和性能问题,因此在实际编程中应谨慎使用。
16 1
【C++笔记】从零开始认识继承
|
2月前
|
编译器 C语言 C++
C++入门指南:类和对象总结笔记(中)
C++入门指南:类和对象总结笔记(中)
50 0
|
3月前
|
机器学习/深度学习 算法 编译器
【C++】自学终极笔记
【C++】自学终极笔记
152 0
|
4月前
|
存储 算法 C++
《C++ STL开发技术引导》 第五章-C++ STL泛化技术分析笔记
《C++ STL开发技术引导》 第五章-C++ STL泛化技术分析笔记
|
4月前
C++2.0(C++11) 笔记 二
C++2.0(C++11) 笔记 二
20 0
|
4月前
|
编译器 容器
C++11 (C++2.0)笔记 一
C++11 (C++2.0)笔记 一
34 0
|
5月前
|
C语言 C++ iOS开发
嵌入式c++软件开发笔记 第六讲
嵌入式c++软件开发笔记 第六讲
17 0