次のクラスがあるとします。
class Test
{
int num;
public:
Test(int x):num(x){}
Test(const Test &rhs):num(rhs.num+1){}
};
int main()
{
Test test(10);
Test copy = test;
}
コピー内のnumは である必要が11あり、私の質問はコピー コンストラクター内に関するものです。コピー内のを初期化するためにusingのプライベート メンバーnumにアクセスできるのはなぜですか? 私を混乱させているのは、 と入力すると、 private にアクセスしようとしているため、もちろん間違っていますが、コピーコンストラクターへの参照によってテストに合格した場合、それは機能します。 testnumnumcout<<test.num<<endlnum