枚举联合不能用作基类,也不能有基类

测试代码如下:

class bbbase1357
{
public:
    explicit bbbase1357( int ii)
        :m_ivalue(ii)
    {

    }
private:
    int m_ivalue;
};


class ddderived1357 :public bbbase1357
{
public:
    ddderived1357()
        :bbbase1357(9)
    {

    }
};


union unTest1441
{
    int ivalue;
    double dvalue;
    int ifunUn()
    {
        return 9;
    }
};


// class der1443Un :public unTest1441//错误    1    error C2569: “unTest1441”: 枚举/联合不能用作基类
// {
// private:
//     int m_ivalue;
// };

// union untest1445 :public bbbase1357//错误    2    error C2570: “untest1445”: 联合不能有基类
// {
//     int ivalue;
// };

可能会感觉比较无聊,,,额,确实。问题是,怎么会有这需求呢?莫完全打住,考虑考虑。。。

原文地址:https://www.cnblogs.com/xiarl/p/3342732.html