运算符重载之重载类型运算符

第一种操作

普通类型 => 类类型
调用对应的只有一个参数【参数的类型就是这个普通类型】的构造函数

需求:
Boy boy1 = 10000; // 薪资 构造函数Boy(int);
Boy boy2 = “Rock” // 姓名 构造函数Boy(char *);
普通类型赋值给类类型其实很简单,就是专门的对这个赋值的类型定义一个构造函数。编译器在执行代码的过程中就会在类里面找有没有样的构造函数。
如下就是对上述需求,写的构造函数:
在这里插入图片描述
在这里插入图片描述

第二种操作

类类型 => 普通类型
调用特殊的运算符重载函数,类型转换函数,不需要写返回类型
类型转换函数:operator 普通类型 ( )

需求:
Boy boy1(“Rock”, 28, 10000, 5);
int power = boy1; // power();
char *name = boy1; // “Rock”

类里面的申明:
在这里插入图片描述
函数定义:
在这里插入图片描述 重载运算符操作,在实际应用中,我觉得其实是很重要的,因为恰到好处的重载操作可以省去重复性的工作,但是重载运算操作可不止上面两个,也有一些符号是不允许重载的,大家也要注意。 (・ิϖ・ิ)っ