C++ 重载运算符 友元函数作为重载运算符 重载运算符+
来源:互联网 发布:淘宝滑动验证码识别 编辑:程序博客网 时间:2024/06/06 21:39
以友元函数作为重载运算符的方式重载运算符+
下面的例子来自于课本
#include <iostream>using namespace std;class Complex{ public: Complex() { real = 0; imag = 0; } Complex(double r, double i) { real = r; imag = i; } friend Complex operator + (Complex &c1, Complex &c2); //声明重载运算符 void display(); private: double real; double imag;};Complex operator +(Complex &c1,Complex &c2){ return Complex(c1.real + c2.real, c1.imag + c2.imag);}void Complex::display(){ cout<<"("<<real<<","<<imag<<"i)"<<endl; //输出复数形式}int main(){ Complex c1(3,4), c2(5,-10), c3; c3 = c1 + c2; //运算符+ 用于复数运算 cout<<"c1= "; c1.display(); cout<<"c2= "; c2.display(); cout<<"c1+c2= "; c3.display(); return 0;}
此主函数中执行c3 = c1 + c2调用了重载运算符operator +;
并且此重载运算符函数是Complex的友元函数。
必须是Complex对象相加才可以。
运行结果:
读者可以自行对比一下友元函数为重载运算符函数和成员函数作为重载运算符函数的区别:http://blog.csdn.net/z_dream_st/article/details/78044481
阅读全文
0 0
- C++ 重载运算符 友元函数作为重载运算符 重载运算符+
- 十七、运算符重载(一) 成员函数重载、友元函数重载、运算符重载规则
- 关于运算符重载 成员函数运算符重载 友元函数运算符重载
- 运算符重载--友元
- 友元运算符重载
- 运算符重载与友元函数
- c++ 运算符重载 友元函数
- 利用友元函数,重载运算符
- 友元函数重载运算符
- 运算符重载为友元函数
- 重载运算符以及友元函数
- 7.10友元函数重载运算符
- 运算符重载和友元函数
- 友元函数编写运算符重载
- 友元函数编写运算符重载
- C++ 重载运算符 友元函数
- C++运算符重载,友元函数
- 友元函数以及重载运算符
- (HR面试)最常见的面试问题和技巧性答复
- LeetCode 542. 01 Matrix
- 第一章绪论
- 人工智能中的偏序规划-基于STRIPS语言
- 在一个Android项目里面有两个可运行文件,如何实现调用方式
- C++ 重载运算符 友元函数作为重载运算符 重载运算符+
- angularjs综合题
- 2-变量和基本类型
- 将Eclipse代码导入到AndroidStudio的两种方式
- 数据字典
- Gitbook/Markdown中插入复杂(合并单元格)的表格
- vs2010 Firebird:3.0源码编译步骤:(以64位举例)
- NoSQL与MySQL关系型数据库
- 异步加载数据加多条目加载