什么是二义性?
- 简单来说就是一个班级有两个同名的人都叫张三, 老师叫张三回答这道题, 这时, 谁都不知道老师指的是哪个张三, 这就是二义
- 多重继承的二义性就是在继承时,基类之间、或基类与派生类之间发生成员同名时,将出现对成员访问的不确定性——同名二义性
- 当派生类从多个基类派生,而这些基类又从同一个基类派生,则在访问此共同基类中的成员时,将产生另一种不确定性——路径二义性。
demo
#include <iostream>
#include <Windows.h>
using namespace std;
class Father {
public:
Father() {
}
~Father() {
}
void play() {
cout
本文探讨了C++中多重继承导致的二义性问题,包括成员同名的二义性和路径二义性。通过示例解释了二义性的概念,并提供了两种解决方法:使用作用域解析运算符指定基类成员,或在子类中重新实现并限定调用基类方法。
最低0.47元/天 解锁文章
1504

被折叠的 条评论
为什么被折叠?



