摘要: 虚析构函数: 使用virtual关键字修饰的析构函数 C++不支持虚构造函数, 但支持虚析构函数, 由于析构函数没有参数, 一个类只能有一个虚析构函数 虚析构函数的必要性: 使用基类的引用或者指向基类类型的指针调用析构函数完成派生类对象的析构(delete操作符自动调用对象的析构函数) 代码示例: 阅读全文
posted @ 2020-09-01 18:16 DNoSay 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 纯虚函数: 不能在基类中给出实现, 但是要求所有派生类必须覆盖(重写)或也声明为纯虚函数的虚函数函数作用: 给所有派生类提供一个操作接口定义纯虚函数的语法:virtual 返回值类型 函数名(<参数列表>) = 0{ <函数体>} 调用抽象类的纯虚函数需要使用完全限定函数名(带作用域分辨符) 抽象类 阅读全文
posted @ 2020-09-01 17:36 DNoSay 阅读(289) 评论(0) 推荐(0) 编辑
摘要: 析构函数中虚函数的调用采用静态联编即构造函数和析构函数调用自己类中定义的虚函数, 而不会调用派生类中声明的虚函数即 代码示例: #include <iostream>using namespace std; /*析构函数中虚函数的调用采用静态联编即构造函数和析构函数调用自己类中定义的虚函数, 而不会 阅读全文
posted @ 2020-09-01 16:39 DNoSay 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 虚函数: 一个成员函数, 该函数在基类的内部声明并且被派生类重新定义, 为了创建虚函数, 应在基类该函数声明的前面加上virtual关键字如果一个类的某个成员函数被说明为虚函数, 意味着该成员在派生类中可能存在不同的实现方式, 当继承包含虚函数的类时, 派生类将重新定义该虚函数以符合自身的需要. 动 阅读全文
posted @ 2020-09-01 15:50 DNoSay 阅读(1048) 评论(0) 推荐(0) 编辑
摘要: 继承描述的是类与类之间的层次关系, 而多态则描述的是这种继承关系以及类自生特定成员函数之间的关系来解决行为的再抽象问题多态性的两种表现形式:1 不同对象在收到相同信息时, 产生不同的动作, 主要通过虚函数来实现2 同一对象在收到相同信息时却产生不同的函数调用, 主要通过函数重载来实现 多态性就是同一 阅读全文
posted @ 2020-09-01 12:31 DNoSay 阅读(169) 评论(0) 推荐(0) 编辑
摘要: C++继承中的构造和析构C++派生类能继承大多数基类的成员, 但不包括构造函数(包括拷贝函数), 析构函数 C++继承中构造函数的调用顺序(单继承)1 调用基类的构造函数, 初始化基类成员, 如果基类也是派生类, 则递归调用基类的基类的构造函数2 调用自身的构造函数, 初始化成员 C++继承中的析构 阅读全文
posted @ 2020-09-01 00:06 DNoSay 阅读(367) 评论(0) 推荐(0) 编辑