zoukankan      html  css  js  c++  java
  • C++ 单目运算 and 双目运算符重载complex

    1 单目运算

    #include<iostream>
    using namespace std;
    //复数
    class Complex{
        public:
        double real,image;
        Complex()=default;
        Complex(double r, double i)
        :real(r),image(i){}
        ~Complex(){}
        Complex operator++(int i)
        {
            Complex tmp;
            tmp.real = this->real++;
            tmp.image = this->image++;
            return tmp;
        }
        Complex operator++()
        {
            this->real++;
            this->image++;
            return *this;
        }
    };
    
    int main()
    {
        Complex c1(10,20);
        Complex c2;
    //  c2 = c1++;
        c2 = ++c1;
        cout<<c1.real<<endl;
        cout<<c1.image<<endl;
        cout<<c2.real<<endl;
        cout<<c2.image<<endl;
        return 0;
    }
    

    2 双目运算符重载complex.cpp

    #include<iostream>
    using namespace std;
    //复数
    class Complex{
        public:
        double real,image;
        Complex()=default;
        Complex(double r, double i)
        :real(r),image(i){}
        ~Complex(){}
        Complex add(Complex c)
        {
            Complex tmp;
            tmp.real = this->real+ c.real;
            tmp.image= this->image+c.image;
            return tmp;
        }
        Complex operator+(Complex c)
        {
            Complex tmp;
            tmp.real = this->real+ c.real;
            tmp.image= this->image+c.image;
            return tmp;
        }
    friend Complex operator-(Complex c1,Complex c2);
    };
    Complex operator-(Complex c1,Complex c2)
    {
            Complex tmp;
            tmp.real = c1.real - c2.real;
            tmp.image= c1.image-c2.image;
            return tmp;
    }
    
    int main()
    {
        Complex c1(10,20);
        Complex c2(10,20);
        Complex c3 ;
        c3 = c1+c2;
    //  c3 = c1.add(c2);
        cout<<c3.real<<endl;
        cout<<c3.image<<endl;
    
        c1 = c3 - c3;
        cout<<c1.real<<endl;
        cout<<c1.image<<endl;
        return 0;
    }
    
  • 相关阅读:
    js 时间相关函数
    javascript面向对象:继承、多态
    面向对象相关
    reset.css css重置公共样式
    开通博客园第一天。
    vue 和 react 路由跳转和传参
    前端密码加密方式
    react组件回顶部
    移动端使用rem方法
    用rekit创建react项目
  • 原文地址:https://www.cnblogs.com/Sico2Sico/p/5384249.html
Copyright © 2011-2022 走看看