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();