2017-10-11 86 views
-3

简短的问题 - 为什么我会收到此消息?简单的朋友声明C++

enter image description here

谢谢。

+1

你为什么想要一个'char *'朋友? – NathanOliver

+0

朋友变量有什么用? – DeiDei

+8

请尽可能地发布文字而不是图片。除此之外,你得到的信息是因为没有朋友变量这样的事情。 – chris

回答

0

你可以让班级成为彼此的朋友。你不能让一个字符指针成为朋友。请阅读http://www.geeksforgeeks.org/friend-class-function-cpp/

+0

好吧,看看http://en.cppreference.com/w/cpp/language/friend我认为这是可能的,只能使私人类成员的一部分访问。 – Jan021981

+0

这是我正在使用的一个较老的类,我只是在初始化它时使私密部分可见。否则,如果我必须编写仅在初始化时才会使用的函数.... – Jan021981

+0

如果您想使外部可见的私有部分可见,为什么要将其私有化? –

2

一个类可以声明另一个类或函数作为它的朋友。变量不能成为班级的朋友。如果你多思考一下,这将是有道理的。一个变量有一个值。它不需要访问另一个类就可以使用它。另一方面,函数或类可能需要访问其他类的私有和受保护的部分以供其实现。

更多的话题可以在https://timsong-cpp.github.io/cppwp/n3337/class.friend看到。

一个从该页面片段:

一类的一个朋友是给从类中使用private和protected成员名称权限的函数或类。一个类通过朋友声明指定其朋友,如果有的话。