首页 > 编程语言 > 详细

C++运算符重载为非成员函数

时间:2015-06-18 12:56:57      阅读:349      评论:0      收藏:0      [点我收藏+]
技术分享
 1 #include<iostream>
 2 using namespace std;
 3 class Complex{
 4 public:
 5     Complex(double r=0.0,double i=0.0):real(r),imag(i){}
 6     friend Complex operator + (const Complex &c1,const Complex &c2);
 7     friend Complex operator - (const Complex&c1,const Complex &c2);
 8     friend ostream & operator <<(ostream & out,const Complex & c);
 9 private:
10     double real,imag;
11 };
12 Complex operator + (const Complex &c1,const Complex &c2)
13 {
14     return Complex(c1.real+c2.real,c1.imag+c2.imag);
15 }
16 Complex operator - (const Complex &c1,const Complex &c2)
17 {
18     return Complex(c1.real-c2.real,c1.imag-c2.imag);
19 }
20 ostream & operator <<(ostream & out,const Complex & c)
21 {
22     out<<"("<<c.real<<","<<c.imag<<")";
23     return out;
24 }
25 int main()
26 {
27     Complex c1(5,4),c2(2,10),c3;
28     cout<<"c1="<<c1<<endl;
29     cout<<"c2="<<c2<<endl;
30     c3=c1-c2;
31     cout<<"c3=c1-c2="<<c3<<endl;
32     c3=c1+c2;
33     cout<<"c3=c1+c2="<<c3<<endl;
34     return  0;
35 }
View Code

 

C++运算符重载为非成员函数

原文:http://www.cnblogs.com/wangkaipeng/p/4585298.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!