友元函数的声明和定义在C++中的实现方法

分类:知识百科 日期: 点击:0

友元函数

友元函数是指可以访问类的私有成员变量和私有函数的函数,它不是类的成员函数,只是一个普通函数,但是可以访问类的私有成员变量和私有函数。在C++中,可以通过友元函数来实现类的封装,避免将类的私有成员变量和私有函数暴露给外部。

友元函数的声明和定义

在C++中,友元函数的声明和定义需要两步:

  • 声明:在类里面使用friend关键字声明友元函数,友元函数的声明可以放在public、protected和private访问控制符之后;
  • 定义:友元函数的定义要在类外面,定义时要使用友元函数的完整函数签名,包括函数的返回值类型、函数名、参数列表等;

使用方法

#include 
 
using namespace std;
 
//定义一个类
class A 
{
private:
    int m_nPrivate;
 
public:
    A() { m_nPrivate = 0; }
 
    //声明一个友元函数
    friend void PrintPrivate(A &a);
};
 
//定义友元函数
void PrintPrivate(A &a)
{
    cout << a.m_nPrivate << endl;
}
 
int main()
{
    A a;
    PrintPrivate(a);
 
    return 0;
}

上面的代码定义了一个类A,类A有一个私有成员变量m_nPrivate,同时声明了一个友元函数PrintPrivate,友元函数的定义在main函数之外,定义时要使用友元函数的完整函数签名,在main函数中使用友元函数来访问类A的私有成员变量m_nPrivate。

标签:

版权声明

1. 本站所有素材,仅限学习交流,仅展示部分内容,如需查看完整内容,请下载原文件。
2. 会员在本站下载的所有素材,只拥有使用权,著作权归原作者所有。
3. 所有素材,未经合法授权,请勿用于商业用途,会员不得以任何形式发布、传播、复制、转售该素材,否则一律封号处理。
4. 如果素材损害你的权益请联系客服QQ:77594475 处理。