微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如果重新定义数据成员,则实现类

如何解决如果重新定义数据成员,则实现类

如果我们重新定义数据成员,对类的实现会发生什么? 例如,假设我们有:
class foo {
public:
    int a;
    char *b;
};
...
class bar : public foo {
public:
    float c;
    int b;
};
条形对象的表示形式是否包含一个或两个b字段?如果是两个,它们都可以访问还是只能访问一个?什么情况下     

解决方法

它包含两个,但其中一个称为foo :: b
int main() {
    bar x;
    x.b = 0;    // access bar::b
    x.foo::b = 0;   // access foo::b
}
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。