通过重载函数add(),实现浮点型数据、整型数据、字符型数据的加法运算(字符串型数据的加法就是将两个字符串拼接成一个字符串)【多组输入】
输入格式
每次输入6行:包含两个整型变量、两个浮点型变量、两个字符型变量
输出格式
各类型数据相加的结果
知识储备,重载函数:
我们在平时写代码中会用到几个函数但是他们的实现功能相同,但是有些细节却不同。例如:交换两个数的值其中包括(int, float,char,double)这些个类型。在C语言中我们是利用不同的函数名来加以区分。
void Swap1(int* a, int* b);
void Swap2(float* a, float* b);
void Swap3(char* a, char* b);
void Swap4(double* a, double* b);
我们可以看出这样的代码不美观而且给程序猿也带来了很多的不便。于是在C++中人们提出了用一个函数名定义多个函数,也就是所谓的函数重载。
一.函数重载定义
函数重载是一种特殊情况,C++允许在同一作用域中声明几个类似的同名函数,这些同名函数的形参列表(参数个数,类型,顺序)必须不同,常用来处理实现功能类似数据类型不同的问题。
在C++中不仅函数可以重载,运算符也可以重载。例如:
运算符<<,>>。既可以做移位运算符,也可以做输出,输入运算符。
注意:重载函数的参数个数,参数类型或参数顺序三者中必须有一个不同
我们可以看到定义了一个Add函数来求三个不同类型数的和,在调用过程中系统会自动根据其实参的类型不同来实现准确调用。
2,void函数定义可以不用返回值~~
代码如下:
#include<iostream>
#include<stdio.h>
using namespace std;
//通过重载函数add(),实现浮点型数据、整型数据、字符型数据的加法运算(字符串型数据的加法就是将两个字符串拼接成一个字符串)
void add(int a, int b) {
cout << "整型数据" << a << "+" << b << "=" << a + b;
cout << endl;
}
void add(float a, float b) {
cout << "浮点型数据" << a << "+" << b << "=" << a + b;
cout << endl;
}
void add(string a, string b) {
cout << "字符型数据" << a << "+" << b << "=" << a + b;
cout << endl;
}
int main() {
int a, b;
float c, d;
string f, g;
while(cin>>a>>b>>c>>d>>f>>g){
add(a, b);
add(c, d);
add(f, g);
}
}