MOOC清华《面向对象程序设计》第4章:函数重写实验
来源:互联网 发布:网页关键词 的优化 编辑:程序博客网 时间:2024/06/05 14:44
#include <iostream>using namespace std;class T{};class B{public:void f(){cout << "B::f()\n";}void f(int i){cout << "B::f(" << i << ")\n";}void f(double d){cout << "B::f(" << d << ")\n";}void f(T){cout << "B::f(T)\n";}};class D1:public B{public:void f(int i){cout << "D1::f(" << i << ")\n";}};int main(){D1 d;d.f(10);d.f(4.9); //编译警告,会执行自动类型转换//d.f(); //被屏蔽,编译错误 //d.f(T()); //被屏蔽,编译错误 return 0; }
会发现:浮点数4.9自动转换成了整型数4 。这就是函数重写的作用。
#include <iostream>using namespace std;class T{};class B{public:void f(){cout << "B::f()\n";}void f(int i){cout << "B::f(" << i << ")\n";}void f(double d){cout << "B::f(" << d << ")\n";}void f(T){cout << "B::f(T)\n";}};class D1:public B{public:using B::f;void f(int i){cout << "D1::f(" << i << ")\n";}};int main(){D1 d;d.f(10);d.f(4.9); //编译警告,会执行自动类型转换d.f(); //被屏蔽,编译错误 d.f(T()); //被屏蔽,编译错误 return 0; }
会发现:加上using 基类名::函数名; 语句后就恢复了基类同名函数在派生类继承中的权限。
阅读全文
0 0
- MOOC清华《面向对象程序设计》第4章:函数重写实验
- MOOC清华《面向对象程序设计》第4章:继承基类构造函数实验
- MOOC清华《面向对象程序设计》第4章:虚函数实验
- MOOC清华《面向对象程序设计》第4章:虚析构函数实验
- MOOC清华《面向对象程序设计》第4章:函数模板实验
- MOOC清华《面向对象程序设计》第4章:函数模板的特化实验
- MOOC清华《面向对象程序设计》第2章:函数重载实验
- MOOC清华《面向对象程序设计》第2章:函数参数的缺省值实验
- MOOC清华《面向对象程序设计》第3章:拷贝构造函数实验
- MOOC清华《面向对象程序设计》第3章:函数运算符重载实验
- MOOC清华《面向对象程序设计》第3章:移动构造函数实验
- MOOC清华《面向对象程序设计》第4章:向上映射实验
- MOOC清华《面向对象程序设计》第4章:自动类型转换实验
- MOOC清华《面向对象程序设计》第4章:explicit禁止自动类型转换实验
- MOOC清华《面向对象程序设计》第4章:delete禁止自动类型转换实验
- MOOC清华《面向对象程序设计》第4章:强制类型转换实验
- MOOC清华《面向对象程序设计》第4章:类模板的特化实验
- MOOC清华《面向对象程序设计》第3章:对象组合实验
- 腾讯投资vipkid,全面向在线教育发起进攻
- c++里文件的输入输出ofstream和ifstream
- Luogu 1273(树形dp)(背包dp)
- Codeblocks : Tips of a day
- 使用monkey测试app的压力
- MOOC清华《面向对象程序设计》第4章:函数重写实验
- RePlugin 2.2.X使用教程
- 17AHU排位赛3 A题 (逆康托展开)
- jdk生成公私钥
- Qt 编译时遇到 error: [debug/qrc_music.cpp] Error 1
- 跨域ajax在线python编辑器
- 信息熵(下)
- Tomcat开机启动
- 日本跟风单边制裁中国涉朝企业 外交部回应