#include<iostream>
using namespace std;
class Complex
{private:int real;//记录实部; int imag;//记录虚部; public:Complex(){}//构造函数并对其赋初值为0; Complex(int a,int b);//重载构造两int型函数; friend Complex operator*(Complex &,Complex &);//友元函数重载*运算符; Complex operator/(Complex &);//成员函数重载/运算符; void display();//输出格式;
};
Complex::Complex(int a,int b)//构造函数定义;
{real=a;imag=b;
}Complex operator*(Complex &a,Complex &b)//友元重载*函数的定义,友元函数的定义不用加Complex::形式;
{Complex c;c.real=a.real*b.real;c.imag=a.imag*b.imag;return c;
}Complex Complex::operator/(Complex &a)//成员重载/运算符函数 定义
{Complex d;d.real=this->real/a.real;d.imag=this->real/a.imag;return d;
}
void Complex::display()
{cout<<"("<<real<<","<<imag<<")"<<endl;
}
int main()
{Complex a(1,2);Complex b(4,8);Complex c;Complex d;c=a*b;d=a/b;cout<<"c=";c.display();cout<<"d=";d.display();return 0;
}

用友元函数重载乘法,用成员函数重载除法相关推荐

  1. C++学习笔记(十)成员变量和成员函数分开存储、this指针、空指针访问成员函数、const修饰成员函数、友元

    1.成员变量和成员函数分开存储 //1.在C++中,类内的成员变量和成员函数分开存储 //2.只有非静态成员变量才属于类的对象上 //空对象占用内存空间为:1 //C++编译器会给每个空对象也分配一个 ...

  2. 基类成员函数和派生类成员函数不构成重载

    基类成员和派生类成员的名字一样时会造成遮蔽,这句话对于成员变量很好理解,对于成员函数要引起注意,不管函数的参数如何,只要名字一样就会造成遮蔽.换句话说,基类成员函数和派生类成员函数不会构成重载,如果派 ...

  3. C++ const型成员函数与 non-const型成员函数 (二)

    C++ const型成员函数与 non-const型成员函数 const 型变量的含义,就是不意修改,就是告诉编译器,不想通过一般的形式修改我的值,除非const_cast去除常量性. vs2013 ...

  4. C++中常对象与常成员函数以及this与成员函数的联系与区别

    class A { }; /* 小记:对于const声明的对象,针对哪个变哪个不变得问题,实际上就是const后的整体不变 e.g.: const int *A; 或 int const *A; / ...

  5. 详解函数指针和类成员函数指针

    作者:倾夜·陨灭星尘 一.什么是函数指针? 函数指针,顾名思义即指向函数的指针. 如果要问,为什么能用一个指针指向一个函数呢?我觉得要理解这个问题,以及要理解后面的函数指针和类成员函数指针,没有什么比 ...

  6. C++函数编译原理和成员函数的实现

    C++函数的编译 C++中的函数在编译时会根据命名空间.类.参数签名等信息进行重新命名,形成新的函数名.这个重命名的过程是通过一个特殊的算法来实现的,称为 名字编码(Name Mangling). N ...

  7. C++普通函数指针和类成员函数指针

    举例1:普通函数指针: int(*fun)(double, int);fun = [](double a, int b) {cout << a << endl;cout < ...

  8. C++ 常函数(const修饰成员函数)

    常函数 const修饰成员函数 const修饰成员函数 常函数: 1.成员函数后加const后我们称这个函数为常函数. 2.常函数不可以修改成员属性. 3.成员属性声明时加关键字mutable后,在常 ...

  9. 重载运算符作为成员函数还是非成员函数

    一.定义为成员函数的运算符 1. 赋值.调用.下标.成员访问箭头运算符(=.().[].->) 2. 改变对象状态的运算符或者与给定类型密切相关的运算符(递增++.递减--.解引用*) 3. 复 ...

最新文章

  1. ui产品小结 - 包含小程序 前端等
  2. 商汤提基于贪心超网络的One-Shot NAS,达到最新SOTA | CVPR 2020
  3. [XPath] XPath 与 lxml (三)XPath 坐标轴
  4. arcgis字段计算器利用python按不同两列数据进行编号
  5. linux上mongodb的安装与卸载
  6. mysql中count(*)和count(1)和count(column)区别
  7. Java中super与this
  8. Oracle数据库用法汇总
  9. 一文读懂 etcd 的 mvcc 实现
  10. 深度学习——用softmax函数来规范可变参数
  11. linux使用nc命令模拟客户端与服务器,测试连通性
  12. 第12章[12.7] Ext JS实现带动态数字的图标
  13. Flex Module优化
  14. ENVI5.3sp1下载链接以及安装全过程
  15. 解决wps在windows上弹窗等的流氓行为
  16. 大童保险发生工商变更:安信信托彻底退出,德弘资本晋升为大股东
  17. Echarts3.0的简单使用,动态获取数据
  18. 内存泄漏,内存溢出总结以及相关解决方案
  19. wma格式怎么转换mp3?
  20. Qt 下载图片并显示图片

热门文章

  1. python求线段长度_python微元法计算函数曲线长度的方法
  2. r语言中的或怎么表示什么不同_R经典入门 之 R语言的基本原理与概念 -- 200430
  3. C# 延迟初始化 LazyT
  4. ireport 无法打开问题
  5. P1678 烦恼的高考志愿
  6. 控制器对应view生命周期
  7. unity3d 随机物体生成器 工具
  8. [转]进程间通信 - ipcrm
  9. 设置背景图时防止图片拉伸的解决方法
  10. [转]解决IE下CSS背景图片闪烁的Bug