=====>友元运算符#include using namespace std;class Test{ public: Test(int a = 0) { Test::a = a; } friend Test ope...
分类:
编程语言 时间:
2014-07-10 10:31:50
阅读次数:
214
1.友元(激情四射的机油)友元关系:是不同类间的一种特殊关系,这种特殊关系允许友元类访问对方的protected和private方法和属性。class Lovers{public: Lovers(std::string theName); void kiss(Lovers *lover)...
分类:
编程语言 时间:
2014-07-09 14:32:55
阅读次数:
148
初探C++运算符重载学习笔记
在上述的博客中...
分类:
编程语言 时间:
2014-07-08 13:14:27
阅读次数:
168
模板友元函数在类内声明类外定义时都必须加模板前缀,另外模板要写在一个文件内// generates undefined error for the operator#include #include template class array { int size;public: array(); t...
分类:
编程语言 时间:
2014-07-06 19:56:39
阅读次数:
199
1.友元函数
(1)友元函数是定义在一个类外的普通函数。
友元函数和普通函数的定义一样;在类内必须将该普通函数声明为友元。
(2)友元函数不是成员函数。
不能通过对象来调用,而是直接调用;友元函数可以访问类的公有、受保护以及私有成员,但是必须通过对象、对象指针或者对象引用来访问。
2.友元函数的声明
friend 返回值类型 函数名(参数表);
在类中只需要将这个声明放置在公有部分即...
分类:
编程语言 时间:
2014-06-30 06:29:31
阅读次数:
190
友元函数:如果在本类以外的其他地方定义了一个函数(这个函数可以是不属于任何类的非成员函数,也可以是其他类的成员函数),在类体中用friend对其进行声明,此函数就称为本类的友元函数。友元函数可以访问这个类中的私有成员。友元函数没有this指针,必须指定要访问的对象友元类:类中的所有函数都可以访问私有...
分类:
编程语言 时间:
2014-06-29 00:07:04
阅读次数:
263
总结:
1.不能重载的运算符: . 和 .* 和 ?: 和 :: 和 sizeof 和 typeid
2.重载运算符有两种基本选择: 类的成员函数或者友元函数, 建议规则如下:
运算符
建议使用
所有一元运算符
成员函数
= () [] ->
必须是成员函数
+= -= /=...
分类:
编程语言 时间:
2014-06-15 17:18:07
阅读次数:
265
第15章 友元、异常和其他
1.友元不仅有友元函数,还能是友元类
还可以将类中的某一个成员函数指定为另一个类的友元
尽管友元被授予从外部访问私有部门的权限,单并不与面向对象编程思想相愽,相反,它们提高了公有接口的灵活性
2.类的成员函数作为其他类的友元,涉及到类的声明顺序。
还有一个函数作为两个类的友元
这方面内容看P607-611
3.嵌套类:在另一个类中声明的类被称为嵌套类
类...
分类:
编程语言 时间:
2014-06-14 17:58:31
阅读次数:
246
程序代码(这段代码在vc6.0中不能编译通过,在VS中能编译通过)
#include
using namespace std;
template//类声明前加模板的声明
class Complex
{
public:
Complex( )
{
real=0;
imag=0;
}
...
分类:
其他好文 时间:
2014-06-10 08:02:29
阅读次数:
249
1、什么是友元函数?
有时候我们需要用一个普通的函数直接的调用类A的成员变量,或者类B的成员函数需要直接调用类A的成员变量,来实现数据的共享。这个时候,为了减少系统的开销,提高程序执行的效率,我们就需要使用“友元函数”的概率。即“友元”的目的是为了方便实现数据的共享。它的优点是:使得程序简洁、直观....
分类:
编程语言 时间:
2014-06-09 19:04:02
阅读次数:
581