class A
{
public:
virtual void disp(int n)
{
cout << "A::disp n=" << n << endl;
}
};
class B : public A
{
public:
// 用int的参数看看是否能调用到基类的那个函数,因为int找不到之后不会去匹配char*的参数,你之前double是可以匹配的,所以编译能通过
virtual void disp(char *str)
{
cout << "B::disp m=" << str << endl;
}
};
如果派送类令基类被覆盖的函数可见,可以试试下面代码
class A
{
public:
virtual void disp(int n)
{
cout << "A::disp n=" << n << endl;
}
};
class B : public A
{
public:
using A::disp;
virtual void disp(double m)
{
cout << "B::disp m=" << m << endl;
}
};
class A
{
public:
virtual void disp(int n)
{
cout << "A::disp n=" << n << endl;
}
};
class B : public A
{
public:
// 用int的参数看看是否能调用到基类的那个函数,因为int找不到之后不会去匹配char*的参数,你之前double是可以匹配的,所以编译能通过
virtual void disp(char *str)
{
cout << "B::disp m=" << str << endl;
}
};
如果派送类令基类被覆盖的函数可见,可以试试下面代码
class A
{
public:
virtual void disp(int n)
{
cout << "A::disp n=" << n << endl;
}
};
class B : public A
{
public:
using A::disp;
virtual void disp(double m)
{
cout << "B::disp m=" << m << endl;
}
};
class A
{
public:
virtual void disp(int n)
{
cout << "A::disp n=" << n << endl;
}
};
class B : public A
{
public:
// 用int的参数看看是否能调用到基类的那个函数,因为int找不到之后不会去匹配char*的参数,你之前double是可以匹配的,所以编译能通过
virtual void disp(char *str)
{
cout << "B::disp m=" << str << endl;
}
};
如果派送类令基类被覆盖的函数可见,可以试试下面代码
class A
{
public:
virtual void disp(int n)
{
cout << "A::disp n=" << n << endl;
}
};
class B : public A
{
public:
using A::disp;
virtual void disp(double m)
{
cout << "B::disp m=" << m << endl;
}
};
class A
{
public:
virtual void disp(int n)
{
cout << "A::disp n=" << n << endl;
}
};
class B : public A
{
public:
// 用int的参数看看是否能调用到基类的那个函数,因为int找不到之后不会去匹配char*的参数,你之前double是可以匹配的,所以编译能通过
virtual void disp(char *str)
{
cout << "B::disp m=" << str << endl;
}
};
如果派送类令基类被覆盖的函数可见,可以试试下面代码
class A
{
public:
virtual void disp(int n)
{
cout << "A::disp n=" << n << endl;
}
};
class B : public A
{
public:
using A::disp;
virtual void disp(double m)
{
cout << "B::disp m=" << m << endl;
}
};
class A
{
public:
virtual void disp(int n)
{
cout << "A::disp n=" << n << endl;
}
};
class B : public A
{
public:
// 用int的参数看看是否能调用到基类的那个函数,因为int找不到之后不会去匹配char*的参数,你之前double是可以匹配的,所以编译能通过
virtual void disp(char *str)
{
cout << "B::disp m=" << str << endl;
}
};
如果派送类令基类被覆盖的函数可见,可以试试下面代码
class A
{
public:
virtual void disp(int n)
{
cout << "A::disp n=" << n << endl;
}
};
class B : public A
{
public:
using A::disp;
virtual void disp(double m)
{
cout << "B::disp m=" << m << endl;
}
};
class A
{
public:
virtual void disp(int n)
{
cout << "A::disp n=" << n << endl;
}
};
class B : public A
{
public:
// 用int的参数看看是否能调用到基类的那个函数,因为int找不到之后不会去匹配char*的参数,你之前double是可以匹配的,所以编译能通过
virtual void disp(char *str)
{
cout << "B::disp m=" << str << endl;
}
};
如果派送类令基类被覆盖的函数可见,可以试试下面代码
class A
{
public:
virtual void disp(int n)
{
cout << "A::disp n=" << n << endl;
}
};
class B : public A
{
public:
using A::disp;
virtual void disp(double m)
{
cout << "B::disp m=" << m << endl;
}
};