友元:友元函数 友元类。 友元函数:不属于任何类,只是在类中声明一下(可以放在 private 或者 public,没有区别),告诉这个类,这个函数是你的朋友,当然朋友不是白当的:这个函数可以访问你的私有成员变量! 毫无疑问,这破坏了类的封装性,可能出现安全问题,那又怎么样~ 毕竟还是朋友。 友元类 ...
分类:
编程语言 时间:
2016-06-17 06:14:56
阅读次数:
191
友元类 使用友元的场合: 1、两个类既不是is-a关系也不是has-a关系,但是两个类之间又需要有联系,且一个类能访问另一个类的私有成员和保护成员。 2、一个类需要用到另外多个类的私有成员。 C++primer一书中给出的例子:电视和遥控器。 友元声明可以位于原始类的任何位置(public,priv ...
分类:
编程语言 时间:
2016-06-01 15:31:15
阅读次数:
182
1.什么是友元在一个类A中,将类B声明为友元类,则类B可以访问类A的私有成员和保护成员。另外,也可以将函数声明为友元函数。 2.什么时候用到友元若不同的类之间某些共享数据成员,可以使用友元,简化类的设计。 3.友元类友元类的声明:friend class 类名示例如下:对于电视和遥控器来说,都共享频 ...
分类:
编程语言 时间:
2016-05-24 12:05:09
阅读次数:
289
/*
All rights reserced.
文件名称:main.cpp
作者:李鑫
完成日期:2016.4.28
问题描述:定义下面两个类的成员函数(为体验友元类,实际上本例并不一定是一个好的设计,将两个类的合并为一个DateTime,日期、时间都处理更好)
*/
#include
using namespace std;
class Date; //对Date...
分类:
其他好文 时间:
2016-05-12 21:13:57
阅读次数:
143
??
/* *Copyright(c)2016,烟台大学计算机与控制工程学院 *All rights reserved *文件名称:123.cpp *作 者:隋宗涛 *完成日期:2016年5月9日 *版 本 号:v1.0 * *问题描述:定义下面两个类的成员函数。 */ #include using namespace std; class Date; //对D...
分类:
其他好文 时间:
2016-05-12 17:31:38
阅读次数:
209
/*Copyright (c)2016,烟台大学计算机与控制工程学院
02.*All rights reserved.
03.*文件名称:main.cpp
04.*作 者:田志伟
05.*完成日期:2016年5月9日
06.*版 本 号:v1.0
07.*
08.*问题描述: 友元时间类
09. 输入描述:
10.*输出描述: 年月日小时分钟秒
*/
#include
using name...
分类:
其他好文 时间:
2016-05-12 16:57:14
阅读次数:
142
1. 友元的概念 (1)友元是C++中的一种关系,友元关系发生在函数与类之间或类与类之间 (2)友元关系是单项的,不能传递 2. 友元的用法 (1)在类中以friend关键字声明友元 (2)类的友元可以是其它类或者具体函数 (3)友元不是类的一部分,也不受类中访问级别的限制,可以直接访问具体类的所有 ...
分类:
其他好文 时间:
2016-04-20 00:23:24
阅读次数:
214
注意, [1]友元的关系是单向的。如果声明类B是类A的友元类,则类B中的成员函数可以访问类A中的private成员,但类A中的成员函数不能访问类B中的private成员。 [2]友元的关系不能传递。如果类B是类A的友元类,类C是类B的友元类,不等于类C是类A的友元类。 Remark:关于谁在前面的问
分类:
其他好文 时间:
2016-03-16 00:53:40
阅读次数:
218
第十五章 友元、异常和其他 友元 友元类 表 0-1 class Tv { public: friend class Remote; }Remote类可以使用Tv的数据成员,Remote类在Tv类后定义 。 友元成员函数 表 0-2 class Tv; //前向声明 class Remote { p...
分类:
编程语言 时间:
2016-03-11 20:34:39
阅读次数:
178
一、文章来由上一篇写了友元函数,这一次写一个姊妹篇,继续深入探究一下友元类。二、定义
友元类的所有成员函数都是另一个类的友元函数,都可以访问另一个类中的隐藏信息(包括私有成员和保护成员)。
当希望一个类可以存取另一个类的私有成员时,可以将该类声明为另一类的友元类。定义友元类的语句格式如下:
friend class 类名;
其中:friend和class是关键字,类名必须是程序中的一个已...
分类:
编程语言 时间:
2016-03-11 10:28:48
阅读次数:
215