C++ 为什么是c++;是否允许成员函数定义中实例的私有成员访问?

C++ 为什么是c++;是否允许成员函数定义中实例的私有成员访问?,c++,C++,Stock是一个具有名为total_val的私有数据成员的类 const Stock & Stock::topval(const Stock & s) const { if (s.total_val > total_val) return s; else return *this; } 这个程序正确吗? 依我看,我们不应该被允许访问这里的私人会员 if (s.total_val

Stock是一个具有名为total_val的私有数据成员的类

const Stock & Stock::topval(const Stock & s) const 
{ 
    if (s.total_val > total_val) 
        return s;           
    else 
        return *this;       
} 
这个程序正确吗? 依我看,我们不应该被允许访问这里的私人会员

if (s.total_val > total_val)
我认为不应该允许
s.total\u val


请给我解释一下你的密码是正确的

类的私有成员只能由该类的成员和朋友访问,,而不管这些成员是在同一实例上还是在不同实例上

在您的情况下,您有一个成员在另一个实例上,所以应该可以