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と2つのパブリック関数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();
-
C#のネストされたクラス
ネストされたクラスは、別の囲んでいるクラスで宣言されたクラスです。これはその包含クラスのメンバーであり、包含クラスのメンバーはネストされたクラスのメンバーにアクセスできません。 C#のネストされたクラスのサンプルコードスニペットを見てみましょう- 例 class One { public int val1; public class Two { public int val1; } } class Demo { static void Main
-
C#のネストされたクラスとは何ですか?
ネストされたクラスは、別の包含クラスで宣言されたクラスです。これはその包含クラスのメンバーであり、包含クラスのメンバーはネストされたクラスのメンバーにアクセスできません。 C#のネストされたクラスのサンプルコードスニペットを見てみましょう- class One { public int num1; public class Two { public int num2; } } class Demo { static void Main() {