C ++类中的成员private和成员有什么区别?protected
private
protected
我从最佳实践约定中了解到,不应该在类外调用的变量和函数应该被制作private——但看看我的 MFC 项目,MFC 似乎更喜欢protected.
有什么区别,我应该使用哪个?
私有成员只能在定义它们的类中访问。
受保护的成员可以在定义它们的类和从该类继承的类中访问。
编辑:它们的类的朋友也可以访问两者,如果是受保护的成员,它们的派生类的朋友也可以访问它们。
编辑 2:在您的问题的上下文中使用任何有意义的东西。您应该尽可能将成员设为私有,以减少耦合并保护基类的实现,但如果这不可能,则使用受保护的成员。检查C++ FAQ以更好地理解该问题。