多态性练习:定义一个基类BaseClass,从他派生出类DerivedClass。BaseClass有成员函数 fn1(),fn2()

news/2024/11/24 11:57:54/

fn1()是虚函数;DerivedClass也有成员函数 fn1(),fn2()。在主函数中声明一个DerivedClass的对象,分别用BaseClass和DerivedClass的指针指向DerivedClass的对象,并通过指针调用fn1(),fn2(),观察运行结果。

#include <iostream>
using namespace std;
class BaseClass
{
public:virtual void fn1() {cout << "调用基类的虚函数 fn1()" << endl;}void fn2(){cout << "调用基类的非虚函数 fn2()" << endl;}};class DerivedClass : public BaseClass
{
public: void fn1(){cout << "调用派生类的函数 fn1()" << endl;}void fn2(){cout << "调用派生类的函数 fn2()" << endl;}
};void main()
{DerivedClass aDerivedClass;DerivedClass *pDerivedClass = &aDerivedClass;BaseClass *pBaseClass = &aDerivedClass;pBaseClass->fn1();pBaseClass->fn2();pDerivedClass->fn1();pDerivedClass->fn2();
}

在BaseClass中声明虚析构函数,在主函数中将一个动态分配的DerivedClass的对象地址赋给一个BaseClass的指针,然后通过指针释放对象空间。运行观察结果

#include <iostream>
using namespace std;
class BaseClass
{
public:virtual ~BaseClass(){cout << "虚函数 ~BaseClass()" << endl;}};class DerivedClass : public BaseClass
{
public:virtual ~DerivedClass(){cout << "虚函数 ~DerivedClass()" << endl;}
};int main()
{BaseClass *p;p = new DerivedClass;delete p;
}

http://www.ppmy.cn/news/542788.html

相关文章

08 Python-函数(一)(二)

文章目录 1. 可变对象2.函数简介3. 函数的参数3.1 形参和实参3.2 函数的传递方式3.3 实参的类型3.4 不定长参数3.5 参数的解包 4.函数的返回值5.档字符串6.函数的作用域6.1. 作用域(scope)6.1.1 全局作用域6.1.2 函数作用域 7.递归函数7.1.递归式函数有2个条件7.2.递归经典练习…

处理 JavaScript 异步操作的几种方法总结

引言 js的异步操作&#xff0c;已经是一个老生常谈的话题&#xff0c;关于这个话题的文章随便google一下都可以看到一大堆。处理js的异步操作&#xff0c;都有一些什么方法呢&#xff1f;仁者见仁智者见智 一、回调函数 传说中的“callback hell”就是来自回调函数。而回调函…

leetcode1.两数之和

个人主页&#xff1a;平行线也会相交 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 平行线也会相交 原创 收录于专栏【LeetCode】 &#x1f353;希望我们一起努力、成长&#xff0c;共同进步。 题目链接 给定一个整数数组 nums 和一个整数目标值 target&am…

Master PDF Editor(PDF编辑工具)v5.4.04中文免费版

Master PDF Editor是一款很方便的pdf编辑工具&#xff0c;可以对pdf文件中的文字、图片等内容进行编辑&#xff0c;并支持将PDF文件导出为多种图片格式 中文设置方法&#xff1a; 点击菜单Tools--> Settings-->Language-->Chinese-Simplified即是中文版本 软件特色&…

PDF编辑软件adobe acrobat pro 9中文版

教程&#xff1a; 1、下载软件包并解压得到下列文件&#xff0c;鼠标双击AcroPro.msi 2、点击下一步。 3、填写用户名、单位&#xff0c;安装软件已自动填写&#xff0c;如果你自己有可以自行填写。 4、继续默点击下一步&#xff0c;直到显示安装 5、等待安装。 6、安装完毕。…

什么软件可以编辑PDF文件?编辑工具分享

我们想要编辑PDF文件&#xff0c;有什么工具可以编辑呢&#xff1f;PDF文件作为我们日常中经常使用的文件格式之一&#xff0c;对它的编辑需求可以说是极大的&#xff0c;如对文件的错误地方修改、作标注、删除页面等&#xff0c;但大家都知道PDF文件不易修改&#xff0c;那我们…

Windows系统下的PDF编辑工具软件-PDF编辑器下载

PDF编辑器是一款Windows系统下的PDF编辑工具软件&#xff0c;它支持修改编辑PDF文件并向PDF添加文字、擦除内容、插入图片、绘制直线、加椭圆框、加矩形框和旋转PDF等功能。PDF编辑器可以让您在PDF文件的任何位置添加文字、删除内容、加图片或进行其他编辑&#xff0c;简单的如…

最强大的PDF编辑器Adobe Acrobat DC Pro

前言 PDF&#xff08;Portable Document Format的简称&#xff0c;意为“便携式文档格式”&#xff09;&#xff0c;是由Adobe Systems用于与应用程序、操作系统、硬件无关的方式进行文件交换所发展出的文件格式。无论在哪种打印机上都可保证精确的颜色和准确的打印效果&#…