提交 21321248 编写于 作者: W wsb

重载括号示范

上级 a1c7f5b5
......@@ -3,4 +3,4 @@ project(CPP_11_HeavyLoad)
set(CMAKE_CXX_STANDARD 11)
add_executable(CPP_11_HeavyLoad main.cpp test.cpp test.h operatorDemo.cpp operatorDemo.h minusOperator.cpp minusOperator.h relationOperator.cpp relationOperator.h outAndInOperator.cpp outAndInOperator.h PlusPlusOperator.cpp PlusPlusOperator.h EqualOperator.cpp EqualOperator.h)
add_executable(CPP_11_HeavyLoad main.cpp test.cpp test.h operatorDemo.cpp operatorDemo.h minusOperator.cpp minusOperator.h relationOperator.cpp relationOperator.h outAndInOperator.cpp outAndInOperator.h PlusPlusOperator.cpp PlusPlusOperator.h EqualOperator.cpp EqualOperator.h bracketsOperator.cpp bracketsOperator.h)
//
// Created by 11010 on 2023/4/8.
//
#include "bracketsOperator.h"
//构造函数
bracketsOperator::bracketsOperator(int max, int min):max(max),min(min) {
}
//重载()运算符
bracketsOperator bracketsOperator::operator()(int a, int b, int c) {
max=a+b+c;
min= (a>b? a:b)-c ;
return bracketsOperator(max, min);
}
//打印消息
void bracketsOperator::print() {
cout<<"max: "<<max<<", min: "<<min<<endl;
}
//
// Created by 11010 on 2023/4/8.
//
#ifndef CPP_11_HEAVYLOAD_BRACKETSOPERATOR_H
#define CPP_11_HEAVYLOAD_BRACKETSOPERATOR_H
#include <iostream>
using namespace std;
//括号运算符重载: 目的是在使用时可以重载任意多个参数
class bracketsOperator {
public:
int max;
int min;
bracketsOperator(int max,int min);
bracketsOperator operator() (int a,int b,int c); //括号运算符重载: 目的是在使用时可以重载任意多个参数
void print();
};
#endif //CPP_11_HEAVYLOAD_BRACKETSOPERATOR_H
......@@ -7,6 +7,7 @@
#include "outAndInOperator.h"
#include "PlusPlusOperator.h"
#include "EqualOperator.h"
#include "bracketsOperator.h"
using namespace std;
......@@ -81,6 +82,18 @@ int main() {
eq.print(); //打印改变后的值 ,结果为: len: 30, width: 30
cout << "============================================" << endl;
bracketsOperator bo(100,0);
bo.print();
bracketsOperator bo2(0,0);
//使用重载括号函数,里面可以填入三个参数
bo2=bo(11,11,22);
bo2.print(); //输出结果: max: 44, min: -11
return 0;
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册