C++中可以在一个类中定义另一个类,被定义的类称为内嵌类或嵌套类。嵌套类可以访问其外部类的私有成员,但外部类不能访问内嵌类的私有成员。

以下是一个示例代码,演示了如何在一个类中定义内嵌类:

class OuterClass {
public:
    class InnerClass {
    public:
        void foo() {
            std::cout << "Hello from InnerClass!" << std::endl;
        }
    };
private:
    int privateVar;
public:
    OuterClass(int var) : privateVar(var) {}
    void bar() {
        std::cout << "Hello from OuterClass! My privateVar is " << privateVar << std::endl;
    }
};

int main() {
    OuterClass outer(42);
    outer.bar();

    OuterClass::InnerClass inner;
    inner.foo();

    return 0;
}

在这个例子中,OuterClass包含一个内嵌类InnerClass。在main函数中,我们首先创建了一个OuterClass对象outer,并调用了其bar方法。然后我们创建了一个InnerClass对象inner,并调用了其foo方法。需要注意的是,我们使用了OuterClass::InnerClass来访问内嵌类,而不是直接使用InnerClass

c++内嵌子类

原文地址: https://www.cveoy.top/t/topic/eJuc 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录