C++ 中的嵌套类


嵌套类是在另一个类中声明的类。嵌套类也是封闭类的成员变量,并具有与其他成员相同的访问权限。但是,封闭类的成员函数对嵌套类的成员没有特殊访问权限。

以下程序演示了 C++ 中的嵌套类。

示例

 在线演示

#include<iostream>
using namespace std;
class A {
   public:
   class B {
      private:
      int num;
      public:
      void getdata(int n) {
         num = n;
      }
      void putdata() {
         cout<<"The number is "<<num;
      }
   };
};
int main() {
   cout<<"Nested classes in C++"<< endl;
   A :: B obj;
   obj.getdata(9);
   obj.putdata();
   return 0;
}

输出

Nested classes in C++
The number is 9

在上面的程序中,类 B 在类 A 中定义,所以它是一个嵌套类。类 B 包含一个私有变量 num 和两个公有函数 getdata() 和 putdata()。getdata() 函数接收数据,函数 putdata() 显示数据。如下所示。

class A {
   public:
   class B {
      private:
      int num;
      public:
      void getdata(int n) {
         num = n;
      }
      void putdata() {
         cout<<"The number is "<<num;
      }
   };
};

在函数 main() 中,定义了类 A 和类 B 的对象。然后使用变量 obj 调用函数 getdata() 和 putdata()。如下所示。

cout<<"Nested classes in C++"<< endl;
A :: B obj;
obj.getdata(9);
obj.putdata();

更新于:2020 年 6 月 24 日

25K+ 浏览量

开启你的职业生涯

通过完成课程获得认证

开始吧
广告