我对即将到来的决赛提出了一个简短的问题。私有成员数据和函数是否只能由构造函数访问?
回答和阐述表示赞赏。
这是问题和答案促使我来找你们的人:
修改
5)能够确定语句何时是访问私有成员变量或函数的无效尝试。 - 这是赠品,私有函数和变量只能在构造函数中访问。
所以这是错的?
答案 0 :(得分:2)
是的,这是完全错误的。
根据标准(ISO / IEC 14882:2003(E),§11.0/ 1):
班级成员可以是 - 私人的;也就是说,它的名称只能由声明它的类的成员和朋友使用。
它表示成员,而不是构造函数。
答案 1 :(得分:1)
任何类方法都可以访问类的私有成员。需要考虑的一点是静态成员函数,它没有this
指针,只能访问静态成员变量。 Friend函数和Friend类也可以访问类私有成员变量。
答案 2 :(得分:0)
您可以从类中的任何位置访问私有成员,但不能从其他类或其他子类访问。
答案 3 :(得分:0)
不,它们可以从对象内的任何地方访问,它只是无法从外部访问。
答案 4 :(得分:0)
您可以在对象内部访问它们,而不仅仅是构造函数。
此外,你应该获取并设置方法来从对象外部获取或设置它,以防你想知道如何能够。