1. 如果希望通过函数调用修改实参的值,就应该将形参定义为引用类型;
例如:用swap函数交换两个数的值,应该将形参定义为引用类型
2. 为了通过一次函数调用获得多个结果值,也可以使用引用形参;
3. 在向函数传递大型对象时,为了避免复制实参以调高效率,以及使用无法复制的类类型
(其复制构造函数为private的类类型)作为形参类型时,也应该将形参定义为引用类型。
但这时使用形参的目的是为了避免复制实参,所以应该将形参定义为const引用;
4. 如果不需要通过函数调用修改实参的值,就不应该将形参定义为引用类型;
例如:在求绝对值函数abs中,形参就不宜定义为引用类型。