1、避免同样的功能取多个函数名



因为有函数重载机制,
所以没必要区分 print_int、print_string 等,直接 print 就行。

#include<iostream>
using namespace std;
void print(int i)
{
cout<<"print a integer :"<<i<<endl;
}
void print(string str)
{
cout<<"print a string :"<<str<<endl;
}
int main()
{
print(12);
print("hello world!");
return 0;
}



2、同名构造函数,便于实例化对象



我们知道,C++ 类的构造函数跟类名是相同的;
如果没有函数重载机制,要想实例化不同的对象,就比较麻烦了!




3、操作符重载



操作符重载本质上就是函数重载,
它丰富了已有操作符的含义,方便使用,如 + 可用于连接字符串等!