C++ 为什么赋值运算符重载中不需要get函数?
我只是好奇为什么会这样。这仅仅是重载定义的神奇性质,它位于两个对象都是由其组成的类中吗?我在想这个问题,我觉得有点奇怪,一个函数可以访问两个对象的成员数据C++ 为什么赋值运算符重载中不需要get函数?,c++,operator-overloading,assignment-operator,C++,Operator Overloading,Assignment Operator,我只是好奇为什么会这样。这仅仅是重载定义的神奇性质,它位于两个对象都是由其组成的类中吗?我在想这个问题,我觉得有点奇怪,一个函数可以访问两个对象的成员数据 myClass& myClass::operator= (const myClass& a){ // shallow copy arraySize = a.arraySize; // no get functions needed // deep copy theArray = new int
myClass& myClass::operator= (const myClass& a){
// shallow copy
arraySize = a.arraySize; // no get functions needed
// deep copy
theArray = new int[arraySize]; // no get functions needed
for (int i = 0; i < arraySize; i++){
theArray[i] = a.theArray[i];
}
}
访问权限基于类,您在成员函数中使用的对象不会限制您的访问。访问权限基于类,您在成员函数中使用的对象不会限制您的访问。myClass可以访问myClass的成员。访问不是基于实例,而是基于类。myClass可以访问myClass的成员。访问不是基于实例,而是基于类