确定类的成员变量的访问类型

时间:2009-05-21 18:59:28

标签: c++

下面的表格是确定我正在创建的类的成员变量的访问类型的最佳方法(对不起,如果这个表很难看到;它是显示http://www.cplusplus.com/doc/tutorial/inheritance/的同一个表)?

Access                        public    protected    private
members of the same class     yes       yes          yes
members of derived classes    yes       yes          no
not members                   yes       no           no

4 个答案:

答案 0 :(得分:1)

你应该在那里添加朋友类/方法,但友情是明确的:在C ++ 朋友可以触摸你的私人部分

答案 1 :(得分:1)

表格是正确的,如果这就是你所要求的。

用语言说的是,你总是可以访问你的方法所在类的成员变量。如果成员变量是在父类中定义的,那么你只能在成员变量受保护或公开的情况下访问它。如果你在课外,那么你只能访问公共成员变量。

没有“最好的方式” - 这些是以合理的方式呈现的规则。

答案 2 :(得分:0)

您最好的选择是了解公共关键字,受保护关键字和私有关键字的含义。如果该表可以帮助您了解它,那么一定要使用它;它是正确的。如果你想成为一名有效的C ++程序员,这应该像呼吸一样简单。

答案 3 :(得分:0)

除了朋友之外,这是正确的。

话虽如此,对于任何不仅仅是类似C语言结构的类,或多或少的相关数据,所有成员变量都应该是私有的。几乎没有充分的理由使用受保护的变量。