【发布时间】:2011-08-10 13:27:49
【问题描述】:
鉴于此代码:
class base {
public:
string foo() const; // Want this to be visible in 'derived' class.
}
class derived : public base {
public:
virtual int foo(int) const; // Causes base class foo() to be hidden.
}
如何使 base::foo() 对派生可见,而不使用调用基类的虚拟方法重载来复制它? using 能做到吗,如果能,它去哪儿了,是这样的吗?
class derived : public base {
public:
virtual int foo(int) const;
using base::foo;
}
【问题讨论】:
标签: c++ inheritance overloading hidden