C++中运算符重载的方法

来源:互联网 发布:ecshop php 5.6 编辑:程序博客网 时间:2024/06/05 14:43
**#include<iostream>using namespace std;class Complex{public:    Complex(){real=0;imag=0;}    Complex(double r,double i){real=r;imag=i;}    Complex operator + (Complex &c2);   //声明一个运算符重载+的函数    void display();private:    double real;    double imag;};Complex Complex::operator + (Complex &c2) {   //定义运算符+的函数    Complex c;    c.real=real+c2.real;    c.imag=imag+c2.imag;    return c;}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;}**

在进行运算的时候c2为实参调用c1的运算重载函数operator + (Complex &c2),进行求值,得到两个复数之和,注意上面的operator +是一个函数名,它是Complex的成员函数。

0 0
原创粉丝点击