欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C++浅析之:友元类

程序员文章站 2022-12-10 20:52:09
一、文章来由 上一篇写了友元函数,这一次写一个姊妹篇,继续深入探究一下友元类。 二、定义 友元类的所有成员函数都是另一个类的友元函数,都可以访问另一个类中的隐藏信息(包...

一、文章来由

上一篇写了友元函数,这一次写一个姊妹篇,继续深入探究一下友元类。

二、定义

友元类的所有成员函数都是另一个类的友元函数,都可以访问另一个类中的隐藏信息(包括私有成员和保护成员)。

当希望一个类可以存取另一个类的私有成员时,可以将该类声明为另一类的友元类。定义友元类的语句格式如下:

friend class 类名;

其中:friend和class是关键字,类名必须是程序中的一个已定义过的类。

三、例子

#include 
using namespace std;

class Radius
{
    friend class Circle;   //声明Circle为Radius的友元类
    friend void Show_r(Radius &n);     //声明Show_r为友元函数

public:
Radius(int x)
{
    r = x;
}
~Radius()
{
}

private:
    int r;
};

void Show_r(Radius &n)
{
    cout<<"圆的半径为: "<