第八周任务-项目一(友元函数的运算符重载)
2013-04-19 11:03
369 查看
/* * 程序的版权和版本声明部分 * Copyright (c)2012, 烟台大学计算机学院学生 * All rightsreserved. * 文件名称: object.cpp * 作者:王锴英 * 完成日期: 2013年4 月19 日 * 版本号: v1.0 * 输入描述:无 * 问题描述:友元函数运算符重载 * 程序输出: */ #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); friend Complex operator-(Complex &c1,Complex &c2); friend Complex operator*(Complex &c1,Complex &c2); 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); } Complex operator -(Complex &c1,Complex &c2) { return Complex(c1.real-c2.real,c1.imag-c2.imag); } Complex operator *(Complex &c1,Complex &c2) { return Complex(c1.real*c2.real,c1.imag*c2.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; cout<<"c1="; c1.display(); cout<<"c2="; c2.display(); c3=c1+c2; cout<<"c1+c2="; c3.display(); c3=c1-c2; cout<<"c1-c2="; c3.display(); c3=c1*c2; cout<<"c1*c2="; c3.display(); c3=c1/c2; cout<<"c1/c2="; c3.display(); return 0; }
运行结果:
心得体会:
对各种函数理解深入,有点小激动。
相关文章推荐
- 第八周项目一任务二——实现复数类中的运算符重载(利用类的友元函数)
- 2013第八周上机任务【项目1 实现复数类中的运算符重载(友元函数)】
- 2013第八周上机任务【项目1 实现复数类中的运算符重载】
- 2013第八周上机任务【项目2-Time类中的运算符重载】
- 第八周 项目一 (2) 实现复数类中的运算符重载 友元函数
- 第八周项目一の任务二----用类的友元函数来完成运算符的重载
- 项目1任务二(运算符重载函数作为友元函数)
- 第八周 项目一:任务二(友元函数完成运算符的重载)
- 分子运算2013第八周上机任务【项目3-分数类中的运算符重载】
- 第八周项目1——2 实现复数类中的运算符重载(友元函数)
- 第八周 项目一-复数类中的运算符重载(2)友元函数实现
- 第八周 【项目1-实现复数类中的运算符重载】友元函数
- 第八周-项目一-复数类中的运算符重载(友元函数)
- 第八周项目1-实现复数类中的运算符重载(类的友元函数)
- 第八周 项目一(2):实现复数类中的运算符重载(友元函数)
- 第八周项目1-2利用友元函数实现运算符重载
- 第八周任务-项目一(任务一成员函数的运算符重载)
- 第八周项目一 2用友元函数实现复数类中的运算符重载
- 第八周上机任务项目3-分数类中运算符重载
- 2013第八周上机任务【项目2-Time类中的运算符重载】