由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - C++ multiple inheritance problem
相关主题
还请教一个关于C++的问题C++子类中调用父类指针的问题
template 类的继承问题老调重弹 virtual destructor
[分享]:一篇文章讲通一半Java《面向对象一家人》[合集] 基类函数已经是virtual了,为啥子类还要virtual啊?
子类的assignment operator 怎么访问父类的private memberC++的exception大家常用吗?
问个 C++到C的问题Question about type conversion (转载)
dynamic_cast operator in C++Exception
请问2个类的问题老年转行工程师问问C++11基本问题
C++虚方法问题子类的copy constructor怎么写
相关话题的讨论汇总
话题: book话题: romance话题: c++话题: public
进入Programming版参与讨论
1 (共1页)
a******p
发帖数: 157
1
请教:
为什么会有ambiguous access of getDescription错误? 两个类中方法的signature不一
样啊
#include
using namespace std;
class Book
{
public:
string getDescription(int i) { return "Book"; }
};
class Romance
{
public:
string getDescription() {
return "Romance " ;
}
};
class my : public Book, public Romance
{
};
int main()
{
my book; int i=0;
cout << book.getDescription(i);
}
t****t
发帖数: 6806
2
name lookup和overload resolution是分开的两步. 如果name lookup找到的不全是同
一个子类来的member, 那就是ambigious.

不一

【在 a******p 的大作中提到】
: 请教:
: 为什么会有ambiguous access of getDescription错误? 两个类中方法的signature不一
: 样啊
: #include
: using namespace std;
: class Book
: {
: public:
: string getDescription(int i) { return "Book"; }
: };

N***m
发帖数: 4460
3
re.类似的,把book中getDescription改成private,并且去掉int i;
romance不变,还是会得到ambiguous.

【在 t****t 的大作中提到】
: name lookup和overload resolution是分开的两步. 如果name lookup找到的不全是同
: 一个子类来的member, 那就是ambigious.
:
: 不一

z****e
发帖数: 2024
4
和private 无关。
编译器先找匹配类型,然后再看accesibility.
找不到匹配,自然报错。

【在 N***m 的大作中提到】
: re.类似的,把book中getDescription改成private,并且去掉int i;
: romance不变,还是会得到ambiguous.

a******p
发帖数: 157
5
谢谢解答
另外,为什么如果我不调用这个函数,vc就不抱错呢?
难道是编译器相关?不调用,就不做name lookup?
z****e
发帖数: 2024
6
因为其他的部分还能凑合着用用,就先用着吧。

【在 a******p 的大作中提到】
: 谢谢解答
: 另外,为什么如果我不调用这个函数,vc就不抱错呢?
: 难道是编译器相关?不调用,就不做name lookup?

1 (共1页)
进入Programming版参与讨论
相关主题
子类的copy constructor怎么写问个 C++到C的问题
[合集] 问一个design pattern的问题dynamic_cast operator in C++
[合集] 关于vector存储value copy的一个问题请问2个类的问题
帮我看一下python 多线程这样写对不对C++虚方法问题
还请教一个关于C++的问题C++子类中调用父类指针的问题
template 类的继承问题老调重弹 virtual destructor
[分享]:一篇文章讲通一半Java《面向对象一家人》[合集] 基类函数已经是virtual了,为啥子类还要virtual啊?
子类的assignment operator 怎么访问父类的private memberC++的exception大家常用吗?
相关话题的讨论汇总
话题: book话题: romance话题: c++话题: public