c++ 友元
来源:互联网 发布:python http上传文件 编辑:程序博客网 时间:2024/05/21 11:10
友元可以理解为是类的“朋友”,它可以访问类的保护和私有成员,即一个类的友元对类的访问不受访问权限的控制。友元的作用在于提高程序的运行效率,但是,它破坏了类的封装性和隐藏性。友元可以是一个函数,该函数被称为友元函数;友元也可以是一个类,该类被称为友元类。
一、友元函数
友元函数是在类外定义的一个函数,不是类的成员函数。这个函数可以是普通的C++函数,或者是其他类的成员函数。即普通友元函数和友元成员函数。友元函数是定义在类外部,但需要在类体内进行说明,为了与该类的成员函数加以区别,在说明时前面加以关键字friend。友元函数可以访问类中的保护和私有成员。
注:友元函数只需声明时加friend关键字,函数实现时不用加关键字;
友元函数的声明:
普通友元函数的声明:
friend 类型标识符 友元函数名(参数列表);
如:friend void fun2(int x);
友元成员函数(即将其它类的成员函数声明为该类的友元函数)的声明:
friend 类型标识符 其他类名 :: 友元函数名(参数列表);
如:friend void CStore::f2(int y); //在以引用其它类定义时,需要在本类定义前对其进行声明,如 class CStore;
二、友元类
一个类可以作另一个类的友元称为友元类。当一个类作为另一个类的时,意味着这个类的所有成员函数都是另一个类的友元函数,可以访问另一个类的私有成员。
声明友元类的语法形式:
friend class 类名;
例如:将A类声明为B类的友元类
Class B
{
……
friend class A; // 声明A为B的友元类
……
};
注:
1)友元关系不具有交换性,即是单向的;
2)友元关系不具有传递的。
- C++(一)友元
- [C++]友元学习
- [c++]友元函数
- [c++] 友元详解
- 【C++】友元函数
- c++:友元函数
- C++:友元函数
- C++:友元
- C/C++ 友元
- 【C++】友元函数
- C++:友元
- C++----友元
- 【C++】C++友元
- C++_友元函数
- C++_友元函数
- C++_友元函数
- C++_友元函数
- C++_友元函数
- 中国药店离电子商务还有多远
- 数字图像处理—图像分割—并行边界—利用边缘灰度不连续性(边缘)(边缘与导数)(边界闭合)
- 最短路算法解析
- str.equals("")与("").equals(str)
- jquery的each()详细介绍
- c++ 友元
- 向android模拟器打电话发短信的简单方法
- Fly记事本2.0 C#版本源码 RicTextBox控件版本
- JTAG的SWD接线方式
- 【多重背包】
- 《C++ Primer第五版》读书笔记(7)--SEQUENTIAL CONTAINERS
- c语言中 “字节” “位” 的区别
- C语言结构体 —— sizeof(struct)
- 强大的矢量图形库:Raphael JS 中文帮助文档及教程