第8章 多态性

1.虚函数

 

通过虚函数实现运行时的多态:

#include <iostream>
using namespace std;
class Base1 {
public:
virtual void display() const;
};
void Base 1::display()const {
cout << "Base1::display()" << endl;
}
class Base2:public Base 1 {
public:
virtual void display() const;
};
void Base 2::display()const {
cout << "Base1::display()" << endl;
}
class Derived:public Base2 {
public:
virtual void display() const;
};
void Derived::display()const {
cout << "Derived::display()" << endl;
}
void fun(Base1* ptr) {
ptr->display();
}
int main() {
Base1 base1;
Base2 base2;
Derived derived;
fun(&base1);
fun(&base2);
fun(&derived);
return 0;
}

2.虚表与动态绑定

 

 

 

 

 

 

3.virtual 关键字

 

4.可以是虚函数的成员函数

 

5.一般虚函数成员

 

6.纯虚函数

 

7.抽象类:

 

抽象类的作用:

 

8.override与final

 

override

 

显示覆盖的作用

 

final:

用来避免类被继承,或是基类的函数被覆盖

 

9.运算符重载的意义

 

运算符重载的规定:

 

10.重载为类成员的运算符函数定义形式

11.双目运算符的重载规则

 

12.前置单目运算符重载规则

 

后置单目运算符++和--重载规则

 

13.运算符重载为非成员函数

 

运算符为非成员函数的规则:

 

14.

 

 

posted @ 2024-05-24 20:06  萌墨  阅读(48)  评论(0)    收藏  举报