通过基类来声明派生类有何意义?

sqn1982 sqn1982 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
class Program
{
static void Main()
{
MyBaseClass c = new MyDerivedClass();

Console.ReadLine();
}
}

public class MyBaseClass
{
public void MethodOne()
{
}
}

public class MyDerivedClass : MyBaseClass
{
public void MethodTwo()
{
}
}
}


如上面的代码MyBaseClass是一个基类,MyDerivedClass是派生于MyBaseClass的一个类,
通过MyBaseClass声明一个MyDerivedClass的一个派生类c?
程序是允许这样做的,但这样做的意义何在?
为什么不能直接用MyDerivedClass派生类来声明呢?
...全文

相关推荐

基类,派生类

基类,派生类

pp25210

C++ 基类、派生类对象指针的声明与使用

1、类指针、对象指针 class x{ //… public: voidshow(); }; main() { x x1,*ptr1;           //定义类x的对象x1和类x的指针ptr1 x x2,*ptr2;           //定义类x的对象x2和类x的指针ptr2 x*ptr3;                 //定义类x的指针ptr3 //… pt

ZYZ_DIDO

C++基类指针和派生类指针之间的转换方法讲解

函数重载、函数隐藏、函数覆盖 函数重载只会发生在同作用域中(或同一个类中),函数名称相同,但参数类型或参数个数不同。 函数重载不能通过函数的返回类型来区分,因为在函数返回之前我们并不知道函数的返回类型。 函数隐藏和函数覆盖只会发生在基类和派生类之间。 函数隐藏是指派生类中函数与基类中的函数同名,但是这个函数在基类中并没有被定义为虚函数,这种情况就是函数的隐藏。 所谓隐藏是指使用常规的调用方法,派生类对象访问这个函数时,会优先访问派生类中的这个函数,基类中的这个函数对派生类对象来说是隐藏起来的。 但是隐藏并不意味这不存在或完全不可访问。通过 b->Base::func()访问基类中被隐藏的函数。

weixin_38659648

详解C++中基类与派生类的转换以及虚基类

主要介绍了详解C++中基类与派生类的转换以及虚基类,是C++入门学习中的基础知识,需要的朋友可以参考下

weixin_38657835

设计基类点类(Point)、直接派生类圆类(Circle)、间接派生类圆柱体类(Cylinder),将求面积的函数(area)声明成虚函数,并在主函数实现虚函数

C++课后题,写的时候脑子比较乱,也不太会写注释,各位随意看看就好 题目:设计基类点类(Point)、直接派生类圆类(Circle)、间接派生类圆柱体类(Cylinder),将求面积的函数(area)声明成虚函数,并在主函数实现虚函数调用,输出点类、圆类和圆柱体类面积。提示:其他数据成员和成员函数请根据需要自行设计。其他提示:点类面积return 0即可。

Hixfip
评论 13
收藏 已收藏
分享
返回顶部
sqn1982
C# 111,128 成员 642,536 内容