77问答网
所有问题
当前搜索:
虚方法必须在派生类中重写
方法重载和
方法重写
的功能相同吗?
答:
我理解不一样,原因如下:重写:指的应该是
派生类
重写基类的
虚方法
或者抽象方法,也就是覆盖之前默认的。更多的应该是子类重写父类的方法 例如:C#
中重写
ToString(),如果自己定义的类不重写,则默认只会输出类型名字;而重写之后,也可以输出自己
需要
的信息;重载:指的应该是同一个名字(也就是功能相同...
C# 基类和
派生类
方法重写
答:
这代码就乱七八糟,没法知道结果 只能简单说明下方法修饰符override 和 new的区别 override : 主要是针对父类定义的
虚方法
virtua,表示自己只是一种基本实现,多数子类
需要
根据自己的情况重载;new : 这种情况是父类已经定义好了实现,而且基本上是通用的,但是某个子类需要特殊处理,就显式的覆盖父类...
在基类中定义的纯
虚函数
Deposit,然后
在派生类
CSaving中重定义,运行后提...
答:
函数
重定义,CSaving::Deposit 已经在别的地方定义了,出现这个问题的原因可能是:1 在 别的地方定义了 CSaving::Deposit ,2 把 CSaving::Deposit 定义在头文件里,又没有声明为 inline
c#中抽象类和
虚类
的区别?
答:
abstract 修饰符可以和类、
方法
、属性、索引器及事件一起使用。在类声明中使用 abstract 修饰符以指示某个类只能是其他类的基类。标记为抽象或包含在抽象类中的成员
必须
通过从抽象
类派生
的类来实现。virtual 关键字用于修饰方法、属性、索引器或事件声明,并使它们可以
在派生类中
被
重写
。例如,此方法可被...
C++中的virtual关键字是什么?怎么用?
答:
但是加上virtual之后,将dispaly方法变成了
虚方法
,这样调用的时候编译器会看调用的究竟是谁的实例化对象,这样就实现了多态的效果。也就是说,当基类的
派生类中
有
重写
过基类的虚方法的时候,使用基类的指针指向派生类的对象,调用这个方法实际上调用的会是派生类最后实现的方法。
C#
虚方法
重载的问题A a = b;是将b对象的方法给了a吗。
答:
你这段代码有问题,class B没有继承class A怎么能够
重写
A中的
方法
呢。应该这样写:class B:A { new public void F() { Console.WriteLine("B.F"); } public override void G() {Console.WriteLine("B.G"); } public void R() { } } A a = b这一句是使用A这个引用来引用对象b,...
看MFC程序的苦恼。。。 高手进来啊
答:
虚函数
CWinApp::InitInstance
必须在派生类中重写
。在InitInstance函数中,编写初始化代码,如:创建一个窗口 显示一个窗口CFrameWnd类 作用:为应用程序提供一个窗口,同时实现消息处理功能。成员函数: Create()功能:创建窗体,将之赋于CFrameWnd对象上。BOOL Create(窗口类型, 窗口标题,显示风格,显示区域,符窗口句柄,菜单,扩展...
java 重载和
重写
的区别
答:
1.定义区别:①重载是指不同的函数使用相同的函数名,但是函数的参数个数或类型不同。调用的时候根据函数的参数来区别不同的函数。②覆盖(也叫
重写
)是指
在派生类中
重新对基类中的
虚函数
(注意是虚函数)重新实现。即函数名和参数都一样,只是函数的实现体不一样。2.类的关系区别 覆盖是子类和父类...
重载与覆盖有什么区别?
答:
1.定义区别:①重载是指不同的函数使用相同的函数名,但是函数的参数个数或类型不同。调用的时候根据函数的参数来区别不同的函数。②覆盖(也叫
重写
)是指
在派生类中
重新对基类中的
虚函数
(注意是虚函数)重新实现。即函数名和参数都一样,只是函数的实现体不一样。2.类的关系区别 覆盖是子类和父类...
棣栭〉
<涓婁竴椤
4
5
6
7
9
10
8
11
12
13
涓嬩竴椤
灏鹃〉
其他人还搜