C ++使基类转换再次可访问

时间:2018-05-03 19:45:03

标签: c++

class Base
{
};

class Deriv : private Base
{
public:
    operator Base & ()
    {
        return *this;
    }
};

所以我得到了这个简单的代码。我想在派生类中访问隐式基本转换运算符。 上面的解决方案没有工作,因为编译器将始终使用默认操作(切片)(参见C++ Define Conversion to Base Class)但在我的情况下我只想让它可访问,而不是重载。像

这样的东西
public:
    using operator Base &();

似乎不可能,但我想知道为什么以及是否有其他解决方案(除了制作显式功能)。

请不要问我为什么要这样做,我只是想看看我是否找到了解决这个问题的方法。

0 个答案:

没有答案