class Base
{
};
class Deriv : private Base
{
public:
operator Base & ()
{
return *this;
}
};
所以我得到了这个简单的代码。我想在派生类中访问隐式基本转换运算符。 上面的解决方案没有工作,因为编译器将始终使用默认操作(切片)(参见C++ Define Conversion to Base Class)但在我的情况下我只想让它可访问,而不是重载。像
这样的东西public:
using operator Base &();
似乎不可能,但我想知道为什么以及是否有其他解决方案(除了制作显式功能)。
请不要问我为什么要这样做,我只是想看看我是否找到了解决这个问题的方法。