qfedu-cpp-level/day1/d6.cpp

23 lines
780 B
C++
Raw Permalink Normal View History

#include <iostream>
using namespace std;
// 函数的重载,和函数名、返回值类型、参数列表有关
// 函数名相同,参数列表不同(个数、类型、顺序),构成重载
namespace A
{
int add(int a, int b) { return a + b; }
float add(int a, float b) { return a * 2.0f + b; }
double add(int a, double b) { return a * 3.0 + b; }
int add(int a, int b, int c) { return a + b + c; }
}
int main()
{
// 目的:调用 A 命名空间中的 add 函数
using A::add;
// 调用函数时,编译器会根据参数列表的类型,自动匹配对应的函数
cout << "add(1, 1.5f) = " << add(1, 1.5f) << endl;
cout << "add(1, 1.5) = " << add(1, 1.5) << endl;
cout << "add(1, 3) = " << add(1, 3) << endl;
return 0;
}