运算符重载与友员函数
来源:互联网 发布:java实现加减乘除 编辑:程序博客网 时间:2024/05/18 03:04
1.友员函数使用在,你需要一个函数具有访问类的私有成员,但是不想它成为这个类的成员函数,那么可以声明这个函数为类的友员函数 。
2.运算符重载为类的成员函数时,使用时,左边必须是这个类的对象,如果左边不是类的对象 ,那么是无法调用这个成员函数的,如果想左边不是一个对象就 调用 这个函数,那么
可以声明这个函数为类的友员函数
#include <iostream>
using namespace std;
class Complex
{
private:
int realValue;
int virtualValue;
public:
Complex(int r, int v)
{
realValue = r ;
virtualValue = v ;
}
//object+object
Complex operator + (const Complex &c1);
//object+i,but i+object is false
Complex operator + (const int i);
//i+object
friend Complex operator + (const int i,Complex &c1);
void display(){cout<<realValue<<","<<virtualValue<<endl;}
};
Complex Complex::operator + (const Complex &c1)
{
return Complex(realValue+c1.realValue,virtualValue+c1.virtualValue);
}
Complex Complex::operator + (const int i)
{
return Complex(realValue+i,virtualValue);
}
Complex operator + (const int i,Complex &c1)
{
return Complex(i+c1.realValue,c1.virtualValue);
}
int main()
{
Complex a(1,2);
Complex b(2,3);
Complex c = a+b;
Complex d = a+10;
Complex e = 10+a;
c.display();
d.display();
e.display();
return 0;
}
- 运算符重载与友员函数
- 使用友员重载运算符讨论
- 运算符重载的成员函数和有员函数
- 第八周 项目一实现复数类的运算重载 符(友员函数)
- 运算符重载与友元函数
- 重载运算符与友元函数
- C++重载函数与重载运算符
- 函数重载与运算符重载
- 函数重载与运算符重载
- 关于操作符的友员模板函数重载--无法链接友员函数
- 关于C++中操作符重载的疑问 :四个运算符=, ->, [], ()不可以重载为全局函数(友员函数)
- c++超基础:操作符重载、友员函数
- C++运算符重载 成员函数与友元函数
- C++规定有四个运算符 =, ->, [], ()不可以是全局域中的重载(即不能重载为友员函数)理解。
- 浅谈运算符重载与友元函数
- 友元函数与运算符重载的结合
- 第八周任务一(运算符重载函数作为类成员函数和有员函数及其他)
- 构造函数与运算符重载
- Lucene高亮显示,排序,过滤
- 03_03.inline-block
- 大型票务系统自身特点所引入的安全性问题
- ubuntu 环境搭建问题归纳
- TI_DSP_corePac_带宽管理 - 1.1(优化带宽管理)
- 运算符重载与友员函数
- poj 1936
- c++ static关键字的用法
- 鼠标响应文字跳动效果
- Lucene相关度排序
- 第三十六题 标准库字符操作函数的实现
- 分享一百多套开发视频教程的下载地址
- u-boot环境变量的设置与使用
- 跟着笨鸟一步一步学习spring开发(二、学习spring rest接口开发)