#include "stdafx.h"
#include <string.h>
/*
题目:
根据下列的类的定义,写出加法,乘法二元操作符的友元函数,
而且每一个函数都应返回complex。
并写入一个main函数来测试3+5i和6+2i的加和乘操作。
*/
#include<iostream.h>
class complex{
double real,image;
public:
complex(double r)
{
real=r;
image=0;
}
void assign(double r,double i)
{
real=r;image=i;
}
void print(){cout<<real<<"+"<<image<<"i"<<endl;}
friend complex operator + (const complex &x,const complex &y)
{
complex temp(0);
temp.real= x.real + y.real;
temp.image= x.image + y.image;
return temp;
}
friend complex operator * (const complex &x,const complex &y)
{
complex temp(0);
temp.real=x.real * y.real;
temp.image=x.image*y.image;
return temp;
}
};
int main(int argc, char* argv[])
{
complex ob1(3),ob2(6),ob3(0),ob4(0);
ob1.assign(3,5);
ob2.assign(6,2);
cout<<"************************************"<<endl;
ob1.print();
ob2.print();
cout<<"************************************"<<endl;
//ob2=a+ob1; //整型变量a与类complex对象ob1相加
cout<<"(3+5i)+ (6+2i)= ";
ob3=ob1+ob2;
ob3.print();
cout<<"************************************"<<endl;
cout<<"(3+5i)*(6+2i)= ";
ob4=ob1*ob2; //整型变量a与类complex对象ob1相乘
ob4.print();
}
注:关于构造函数是笔试中就是那样写的,主要是实现友元 运算符重载的那两个函数。
分享到:
相关推荐
类域 友元 运算符 重载类域 友元 运算符 重载类域 友元 运算符 重载
运算符重载:友元(friend)函数问题
一个实例,实现运算符重载(成员函数和非成员函数两种方式),友元函数的使用,注意事项等,自己学习时编写的,
实验六函数重载与运算符重载 实验六函数重载与运算符重载
运算符重载 、运算符重载规则 1.重载运算符的限制 2.运算符重载的语法形 式 、用成员或友元函数重载运算符 1.一元运算符2.二元运算符 3.用成员函数重载运算符 4.用友元函数重载 条件 ②例子 ③注意 5.讨论 6.总结 三...
1. 友元的使用。 2. 掌握重载函数的实现方法。 3. 综合应用。
C++程序设计第11章友元与运算符重载.ppt
第3章运算符重载大连理工大学主讲人-赵小薇面向对象方法与C++程序设计运算符重载方法普通函数成员函数友元函数重载方法成员函数重载运算符何时用成员函数重载算符?当
1、 编写一个简单复数类Scomplex,要求用友元函数重载“+”、“-”运算符,用成员函数重载“=”运算符,使之能够实现整数或浮点数和复数的加法和减法,并且进行测试。 2、空间一点p的坐标为(x,y,z),其中x,y,z为...
主要是C++中,运算符重载的编写的实验,环境VS2010,内容很基本,与类相关
C++程序设计课件 第十章 运算符重载 ...10.4 运算符重载函数作为类成员函数和友元函数 10.5 重载双目运算符 10.6 重载单目运算符 10.7 重载流插入运算符和流提取运算符 10.8 不同类型数据间的转换
2013级,C++程序设计课件。第10章 运算符重载,内容 10.1 ...10.4 运算符重载函数作为类成员函数和友元函数 10.5 重载双目运算符 10.6 重载单目运算符 10.7 重载流插入运算符和流提取运算符 10.8 不同类型数据间的转换
c++ demo,运算符重载,成员函数的实现
运算符重载示例,更适用于新手的练习,高手不用看!
运算符单例友元重载作业,不理解的可以模仿学习。
以下是对C++运算符重载 成员函数与友元函数进行了介绍,需要的朋友可以过来参考下
C++面向对象程序设计重要内容--引用与指针、友元、重载
详细展示了如何定义类的成员及友元函数,以及各运算符重载的方法
c++ demo,重载运算符,友元函数的实现
C++运算符重载:赋予运算符另一种作用,实现自定义类型的运算C++运算符重载内容: 1.友元重载 2.类重载 3.输入输出流重载