とのint A
との範囲を説明してください。int B
void func()
void func1()
class C {
struct S {
int A;
};
int B
public :
void func(){
}
void func1(){
}
};
あなたが求めていることを完全に理解しているかどうかはわかりませんが、理解できれば答えようとします.
関数func()
とfunc1()
は のメンバー関数でC
あるため、ここではまったく同じ名前に対して同一のアクセス権を持っています。B
のメンバー変数であるVariableは、名前空間で修飾することなくC
直接参照できます。func()
func1()
A
一方、変数は の public の非静的メンバー変数であり、次のように、アクセスする前にS
まず型のオブジェクトをインスタンス化する必要があります。S
void func()
{
S s;
B = 0; // Directly accessible, member variable of `C`
s.A = B; // A is a non-static member variable of `S`, requires an object
A == 3; // ERROR! A is not a member variable of C
}