一般函数重载示例程序:
#include <iostream> #include <string> using namespace std; //重载:1.在同一范围中(在同一个类中,在同一个文件中), //2.函数方法名相同, //3.但是参数不同(个数,类型,顺序) //特殊重载: 1、常函数重载 2、操作符重载 //函数重载 同函数名,函数重载有3种情况:参数类型不同、参数个数不同、参数顺序不同 //1.参数类型不同 int add(int num1,int num2) { cout << "int add(int num1,int num2)" << endl; return num1+num2; } //-- float add(float num1,float num2) { cout << "float add(float num1,float num2)" << endl; return num1+num2; } //2.参数个数不同 int add(int num1,int num2,int num3) { cout << "int add(int num1,int num2,int num3)" << endl; return num1+num2+num3; } //3.参数顺序不同 float add(int num1,float num2) { cout << "float add(int num1,float num2)" << endl; return num1+num2; } //-- float add(float num1,int num2) { cout << "float add(float num1,int num2)" << endl; return num1+num2; } int main() { //1.参数类型不同 int num; num = add(2,3); //显示"int add(int num1,int num2)" cout << num << endl; //2.参数个数不同 num = add(1,2,3); //显示"int add(int num1,int num2,int num3)" cout << num << endl; //3.参数顺序不同 float fNum; fNum = add(1,1.1f); //显示"float add(int num1,float num2)" cout << fNum << endl; fNum = add(1.1f,1); //显示"float add(float num1,int num2)" cout << fNum << endl; }