将对象私有分配时的c ++

CLH*_*CLH 1 c++ class

所有.我是c ++的新手,我想问一个关于分配对象的问题.

例如,我有2个来自同一个类的对象,a1和a2.如果班上有私人会员

为什么我们可以做这样的任务a1 = a2;

我的问题是,我认为只有成员函数才有权更改私有成员数据的内容,但通过我刚刚经历的步骤,私有成员数据很容易被更改.这是为什么??

Vla*_*lad 5

可以使用operator=成员函数执行赋值,根据定义,成员函数可以访问私有成员.

当您没有定义一个时,会提供一个默认值:"默认版本执行成员复制,其中每个成员都由其自己的复制赋值运算符复制(也可能是程序员声明的或编译器生成的)." 看到这个.