私は C++ で OOP の基本概念を学んでいますが、論理的な問題に遭遇しました。
#include <iostream>
#include <conio.h>
using namespace std;
class A {
int i;
public:
void set(int x) {
i=x;
}
int get() {
return i;
}
void cpy(A x) {
i=x.i;
}
};
int main()
{
A x, y;
x.set(10);
y.set(20);
cout << x.get() << "\t" << y.get() << endl;
x.cpy(y);
cout << x.get() << "\t" << y.get() << endl;
getch();
}
上記のコードで、なぜ [19 行目] にアクセスできるのかを知りたかったのですがx.i
、それは別のオブジェクトのプライベート メンバーです。オブジェクトがパラメーターとして渡されても、プライベート スコープは同じクラスに制限されていませんか?