1用c++,写出名为add的重载函数,能分别实现两个整数、两个浮点数和2个字符串的相加。
时间: 2024-10-22 09:13:59 浏览: 21
在 C++ 中,你可以通过重载函数来实现对不同类型数据的操作。这里是一个简单的示例,展示了如何编写名为 `add` 的重载函数,分别处理 int、float 和 std::string 类型:
```cpp
#include <iostream>
#include <string>
// 重载函数处理整数相加
int add(int a, int b) {
return a + b;
}
// 重载函数处理浮点数相加
float add(float a, float b) {
return a + b;
}
// 重载函数处理字符串拼接
std::string add(const std::string& a, const std::string& b) {
return a + b;
}
int main() {
// 示例调用
std::cout << "Integers: " << add(5, 7) << std::endl;
std::cout << "Floats: " << add(2.5f, 4.8f) << std::endl;
std::cout << "Strings: " << add("Hello, ", "World!") << std::endl;
return 0;
}
```
在这个例子中,`add` 函数根据不同传入类型的参数执行对应的加法操作。
相关问题
C++写出名为add的重载函数,能分别实现两个整数、两个浮点数和两个字符串的相加
在C++中,你可以通过模板(Template)和函数重载(Function Overload)来实现一个多态的`add`函数,它能够处理不同类型的数据:整数、浮点数和字符串。这里是一个简单的例子:
```cpp
#include <iostream>
#include <string>
// 函数重载,用于两个整数相加
template <typename T>
T add(T a, T b) {
return a + b;
}
// 浮点数相加
float add(float a, float b) {
return a + b;
}
// 字符串拼接(实际上不是真正的加法,这里是模拟)
std::string add(const std::string& a, const std::string& b) {
return a + b;
}
int main() {
int intResult = add(5, 7); // 整数相加
float floatResult = add(3.14, 2.71); // 浮点数相加
std::string strResult = add("Hello", "World"); // 字符串拼接
std::cout << "Int Result: " << intResult << "\n";
std::cout << "Float Result: " << floatResult << "\n";
std::cout << "String Result: " << strResult << "\n";
return 0;
}
```
在这个例子中,`add`函数可以根据传入参数的类型自动选择相应的实现。
c++写出名为add的重载函数,能分别实现两个整数、两个浮点数和2个字符串的相加
在C++中,你可以通过函数模板(Function Templates)和运算符重载(Operator Overload)来实现这样的功能。这里是一个简单的例子,展示了如何定义`add`函数,它能够处理整数、浮点数和字符串的相加:
```cpp
#include <iostream>
#include <string>
// 整数和浮点数相加
template <typename T>
T add(T a, T b) {
return a + b;
}
// 字符串连接(相当于相加)
std::string add(const std::string& str1, const std::string& str2) {
return str1 + str2;
}
int main() {
int intResult = add(5, 7); // 输出:12
float floatResult = add(3.14f, 1.618f); // 输出:4.758
std::string stringResult = add("Hello", "World"); // 输出:"HelloWorld"
std::cout << "Integer Result: " << intResult << std::endl;
std::cout << "Float Result: " << floatResult << std::endl;
std::cout << "String Result: " << stringResult << std::endl;
return 0;
}
阅读全文