社区
C++ 语言
帖子详情
C++ 如何改变子类默认的虚函数属性
kokiahuang
2008-10-27 09:17:27
C++ 如果父类某一函数为虚函数,那么子类继承后子类中默认的还是虚函数,请问如何改变这种默认的虚函数属性。
...全文
128
13
打赏
收藏
C++ 如何改变子类默认的虚函数属性
C++ 如果父类某一函数为虚函数,那么子类继承后子类中默认的还是虚函数,请问如何改变这种默认的虚函数属性。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
l176266956
2008-10-27
打赏
举报
回复
[Quote=引用 6 楼 xtting_8984313 的回复:]
不是怎么改的问题,而是不应该这样做的问题。
还是看一下Exceptional C++/Inside the C++ objects之类的书籍吧。如果C++支持了这种做法才是错误的。
lz有过渡运用面向对象之嫌。
[/Quote]
学习了!
xxzh1
2008-10-27
打赏
举报
回复
不可以改变。
xtting_8984313
2008-10-27
打赏
举报
回复
不是怎么改的问题,而是不应该这样做的问题。
还是看一下Exceptional C++/Inside the C++ objects之类的书籍吧。如果C++支持了这种做法才是错误的。
lz有过渡运用面向对象之嫌。
bingbingzhe
2008-10-27
打赏
举报
回复
mark
晨星
2008-10-27
打赏
举报
回复
C++没有相关机制来直接支持你的想法。
C#好像可以。
biosli
2008-10-27
打赏
举报
回复
改变不了。
不过可以通过子类虚函数显式调用父类虚函数。
帅得不敢出门
2008-10-27
打赏
举报
回复
没法改变.
maplele20
2008-10-27
打赏
举报
回复
好像不能改变吧,除非你进行函数重载
kingofice
2008-10-27
打赏
举报
回复
没办法,这样等于要把接口缩小,C++没这种做法。
C#也只是说该类的虚函数的实现不允许再被改变,sealed修饰符。
luojc714
2008-10-27
打赏
举报
回复
呵呵...看来没事逛论坛也是可以学到蛮多东西呢!
学习了,谢谢各位了!
bxhzct
2008-10-27
打赏
举报
回复
不能改
once_and_again
2008-10-27
打赏
举报
回复
共享 函数表吗?
kokiahuang
2008-10-27
打赏
举报
回复
小弟学习了,我想类中的一个函数不被别人继承,这个函数是继承自父类的虚函数。
c++
虚函数
:父类与
子类
虚函数
的形参不一样会发生什么?
摘抄,部分关于
虚函数
的总结 如果以一个基础类指针指向一个衍生类对象(派生类对象),那么经由该指针只能访问基础类定义的函数(静态联编) 如果以一个衍生类指针指向一个基础类对象,必须先做强制转型动作(explicit cast),这种做法很危险,也不符合语法习惯,在程序设计上也会给程序员带来困扰。(一般不会这么去定义) 如果基础类和衍生类定义了相同名称的成员函数(包括参数相同),那么通过对象指针调用成员函数时,到底调用那个函数要根据指针的原型来确定,而不是根据指针实际指向的对象类型确定。
虚函数
就是为了对.
C++
多态中
虚函数
的
默认
参数问题
C++
多态中
虚函数
的
默认
参数问题 1.基类中
虚函数
的
默认
参数会在编译过程就被保存,再调用
子类
的函数后发生多态,编译器会使用基类的
默认
参数。 #include<iostream> using namespace std; class Base { public: virtual void func(int i = 0) { cout << "Person" << i << endl; } }; class Son :public Base{ publ
虚函数
与纯
虚函数
的区别
虚函数
(impure virtual)
C++
的
虚函数
主要作用是“运行时多态”,父类中提供
虚函数
的实现,为
子类
提供
默认
的函数实现。
子类
可以重写父类的
虚函数
实现
子类
的特殊化。 如下就是一个父类中的
虚函数
:class A { public: virtual void ss() { cout<<"我是基类的
虚函数
"<<endl; } };纯虚函
【
C++
语言】面向对象 ( 继承 | 重写 |
子类
调用父类方法 | 静态多态 | 动态多态 |
虚函数
| 纯
虚函数
)
类的继承 方法的重写
子类
中调用父类方法 多态
虚函数
虚函数
示例 纯
虚函数
相关代码
【
C++
】
虚函数
中的
默认
参数
网上面试题中有一道以前没有想过,也没有试过的题。就是在继承关系中,
虚函数
中如果有
默认
参数,实际过程中,
默认
参数是多少。 试验代码如下: #include <iostream> using namespace std; class A { public: virtual void foo (int i = 1) { cout << "foo in class A...
C++ 语言
65,211
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章