首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

基类中的typedef是否在继承的类中可见而没有完全限定?

在C++中,基类中的typedef在继承的类中是可见的,但是如果需要使用这个typedef,需要使用完全限定的名称。这是因为typedef是在当前命名空间中定义的,而不是在类中定义的。因此,在继承的类中,需要使用基类的命名空间来访问这个typedef。

例如,假设我们有以下基类和继承的类:

代码语言:txt
复制
class Base {
public:
    typedef int MyType;
};

class Derived : public Base {
public:
    void func() {
        MyType x; // 错误,因为MyType在Derived类中不可见
        Base::MyType y; // 正确,使用完全限定的名称来访问MyType
    }
};

在上面的例子中,MyTypeDerived类中不可见,因为它是在Base类中定义的。为了访问MyType,需要使用Base::MyType来进行完全限定。

需要注意的是,这个问题和云计算没有直接的关系,因此不需要涉及到云计算相关的产品和服务。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券