【发布时间】:2012-08-06 12:16:31
【问题描述】:
为什么下面的重载函数调用不明确?出现编译错误:
重载'test(long int)'的调用不明确,候选者是:void test(A)| 无效测试(B)|
代码:
class A
{
public:
A(int){}
A(){}
};
class B: public A
{
public:
B(long){}
B(){}
};
void test(A a)
{
}
void test(B b)
{
}
void main()
{
test(0L);
return;
}
【问题讨论】:
标签: c++ implicit-conversion overload-resolution