标题:基类与派生类同名同类型的函数重载的问题请教?
只看楼主
wgrinms
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2005-11-4
 问题点数:0 回复次数:2 
基类与派生类同名同类型的函数重载的问题请教?

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
#include <iostream.h>
class holder
{
public:
virtual void re();
};
void holder::re()
{
cout<<"基类"<<endl;
}
class hold1:public holder
{
public:
void re();
};
void hold1::re()
{
cout<<"派生类"<<endl;
}
main()
{
hold1 hold;
hold.re();
}

[此贴子已经被作者于2005-11-13 15:14:48编辑过]

搜索更多相关主题的帖子: 基类 派生类 函数 void holder 
2005-11-13 15:13
wgrinms
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2005-11-4
得分:0 

上述中的程序,涉及到基类与派生类同名同类型函数重载的问题

基类holder中定义了虚拟函数Void re()
在派生类hold1中重载了函数Void re(),

根据教程所讲,假如在基类holder中去掉Virtual关键字,
当在main()中调用hold.re(),实际上是调用基类的re(),


但我调试时,从结果中得知系统还是调用了派生类的re();
不知何由,请高手指教!

[此贴子已经被作者于2005-11-13 15:27:14编辑过]

2005-11-13 15:23
wgrinms
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2005-11-4
得分:0 

教学资料如示介绍


2005-11-13 16:05



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-33700-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.108289 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved