#include <iostream>
#include <string>
using namespace std;
//1.运算符重载
//a.运算符重载 是对已有的运算符 指定新功能。不能创建新运算
//b.运算符重载关键字operator
//c.弄懂运算符的运算对象的个数。(个数决定了 重载函数的参数个数)
//d.识别运算符左边的运算对象 是类的对象 还是其他。
//类的对象:全局函数实现(不推荐) 成员函数实现(推荐,少一个参数)
//其他:只能是全局函数实现
class Person
{
//如果使用全局函数 重载运算符 必须将全局函数设置成友元。
friend ostream& operator<<(ostream &out, Person ob);
friend istream& operator>>(istream& in, Person& ob);
//friend Person operator+(Person ob1, Person& ob2);
public:
Person operator+(Person& ob); //成员函数重载+
bool operator==(Person &ob); //成员函数重载==
Person operator++(int); //案例1:重载后置++
Person operator++(); //案例2:重载前置++
private:
int num;
string name;
float score;
public:
Person(){}
Person(int num, string name,
C++ 语法 - 8. 运算符重载 operator - 详解
于 2023-04-20 22:33:37 首次发布