C++之virtual 方法
来源:互联网 发布:java redis实战 pdf 编辑:程序博客网 时间:2024/04/29 21:26
1、例子1
#include <iostream>class A{public: const char* fetchClassName() { return "A"; }};class B: public A{public: const char* fetchClassName() { return "B"; }};int main(void){ B obj_b; A &obj_a = obj_b; std::cout << obj_a.fetchClassName() << "\n";}
运行结果
A
2、例子2
#include <iostream>class A{public: virtual const char* fetchClassName() { return "A"; }};class B: public A{public: virtual const char* fetchClassName() { return "B"; }};int main(void){ B obj_b; A &obj_a = obj_b; std::cout << obj_a.fetchClassName() << "\n";}
运行结果
B
3、例子3
#include <iostream>class A{public: virtual const char* fetchClassName() { return "A"; }};class B: public A{public: const char* fetchClassName() { return "B"; }};int main(void){ B obj_b; A &obj_a = obj_b; std::cout << obj_a.fetchClassName() << "\n";}
运行结果
B
4、例子4
#include <iostream>class A{public: virtual const char* fetchClassName() { return "A"; }};class B: public A{public: const char* fetchClassName() { return "B"; }};class C: public B{public: const char* fetchClassName() { return "C"; }};int main(void){ C obj_c; A &obj_a = obj_c; std::cout << obj_a.fetchClassName() << "\n";}
运行结果
C
5、例子5
#include <iostream>class A{public: virtual const char* fetchClassName() { return "A"; }};class B: public A{public: const char* fetchClassName() { return "B"; }};class C: public B{public: const char* fetchClassName(int a) { return "C"; }};int main(void){ C obj_c; A &obj_a = obj_c; std::cout << obj_a.fetchClassName() << "\n";}
运行结果
B
reason:You can see that the prototype of the function in Class ‘C’ is different in the above sample code.
0 0
- C++之virtual 方法
- c++virtual
- C井中virtual方法与abstract方法的区别
- 【c++】error 某方法 declared as a 'virtual' field
- virtual box 下WIN7虚拟机C盘容量扩展方法
- C#.net 关键字之virtual老司机教学
- C#初识6 多态之虚方法(virtual,override)
- C#Virtual方法(虚方法)、Abstract方法(抽象方法)、Interface的区别
- 关于C#:abstract,virtual
- C++Virtual详解
- Virtual & Abstract (C++)
- C#virtual override new
- C++ virtual 继承
- C# 关键字--virtual
- c++------virtual const static
- C++virtual继承
- c++Virtual关键字
- C++:virtual关键字
- 函数
- DaMa │ 128win Online Casino Unlimited Daily Instant Cash Back(128win, 128win rebate bonus, 128win Un
- Java编程思想读书笔记(02)
- matlab软件的功能介绍
- Python--私有化
- C++之virtual 方法
- NSOprationQueue 与 GCD 的区别与选用
- 多线程学习(十)-同步集合类
- 绪论之算法和算法的衡量
- 双目视觉:三角测量原理
- java类过滤器,防止页面SQL注入
- Leetcode: 332.Reconstruct Itinerary
- libpng12-dev : Depends: libpng12-0 (= 1.2.54-1ubuntu1) but 1.2.54-1ubuntu1k1 is to be installed
- 【codevs】 1404 字符串匹配(KMP)