发布于2021-07-24 21:32 阅读(1277) 评论(0) 点赞(17) 收藏(1)
#include <iostream>
using namespace std;
class Complex
{
public:
Complex() //定义无参构造函数
{
real=0;
imag=0;
}
Complex(double r, double i) //定义带参构造函数重载
{
real=r;
imag=i;
}
operator double() //定义类型转换函数
{
return real;
}
private: //定义私有成员函数
double real;
double imag;
};
int main()
{
Complex c1(3, 4), c2(5, -10), c3; //实例化三个对象,传入参数
double d;
d= 2.5+c2; //一个double类型与c2对象相加
cout << "复数型c1加上double型c2的值为:" << d << endl;
return 0;
}
#include <iostream>
using namespace std;
class Complex
{
public:
Complex() //定义无参构造函数
{
real=0;
imag=0;
}
Complex(double r) //定义一个参数构造函数
{
real=r;
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对象
Complex operator + (Complex c1, Complex c2)
{
return Complex(c1.real + c2.real, c1.imag + c2.imag); //返回c1、c2的实部相加,虚部相加的一个Complex类型
}
//定义普通成员函数,显示
void Complex::display()
{
cout << "(" << real << "," << imag << ")" << endl;
}
int main()
{
Complex c1(3, 4), c2(5, -10), c3; //实例化三个对象,传入参数
c3= c1+2.5;
cout << "复数型c1加上double型2.5的值为:";
c3.display();
c3= c2+2.5; //一个double类型与c2对象相加,或者c2+2.5
cout << "复数型c2加上double型2.5的值为:";
c3.display(); //显示出c3的值
return 0;
}
原文链接:https://blog.csdn.net/Viewinfinitely/article/details/118256148
作者:新宫之晨
链接:http://www.pythonpdf.com/blog/article/314/c31d01d00e525232d541/
来源:编程知识网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!