嵌套类是在另一个类中声明的类。嵌套类也是封闭类的成员变量,并且具有与其他成员相同的访问权限。但是,封闭类的成员函数对嵌套类的成员没有特殊的访问权限。
演示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();