C ++使用“朋友”[重复]

Posted

技术标签:

【中文标题】C ++使用“朋友”[重复]【英文标题】:C++ use of "friend" [duplicate] 【发布时间】:2011-11-01 04:45:06 【问题描述】:

可能重复:When should you use 'friend' in C++?

所以我知道一个类或函数可以用关键字作为朋友,但这意味着什么以及如何使用它?我试过阅读,但没有人解释以下含义:

class x
public:
friend function(int x);
;

我为什么要声明函数为朋友,这对我有什么用处。另外,将一个类声明为朋友是什么意思?谢谢。

【问题讨论】:

【参考方案1】:

友元函数基本上是在一个类中声明的,但在它之外定义。它被授予对类的其他受限(即:私有)内部成员的特殊访问权限。

见:http://www.cplusplus.com/doc/tutorial/inheritance/

【讨论】:

必须在外面定义吗?那是我去尝试了解朋友的地方,但无济于事。好友功能有什么用? @Richard:你读过那篇文章吗?它的顶部很清楚地描述了它。如果你不想在它之外定义它,那么它只是类的一个方法。【参考方案2】:

你知道privateprotected 关键字是什么意思吗?

friend 函数和friend 类的所有成员函数绕过可访问性检查。

【讨论】:

以上是关于C ++使用“朋友”[重复]的主要内容,如果未能解决你的问题,请参考以下文章

为 C# Express 用户识别潜在重复代码的好工具都有哪些? [关闭]

测试 C/C++ 源代码 [重复]

在 C# 中使用“C”dll [重复]

CMake C / C ++宏生成[重复]

非常简单的 C/C++ XML 解析器 [重复]

C代码编译为C++,但不是C [重复]