多个同名的函数实现之前,必须保证至少有一个函数参数的类型有区别。返回值、参数名称不能作为区分标识
1、用于替换冗长复杂、变量使用范围专一的变量声明
比如定义vector的迭代器
2、定义模板函数时,用于声明依赖模板参数的变量类型
3、结合auto和decltype,自动追踪返回类型