关于返回值不同的同名函数
在一个文件中调用average(3,6)返回两个int参数的平均值(int),在同一程序另一个文件中调用时,返回两个int参数的平均值(double)应如何实现?请教是不是用模板实现?如何写这类模块函数?我只会写参数类型不同的哦
回复
可以使用函数模版,,也可以重载 average ,再另一个文件中使用时, 写extern函数模版
template <class T>T Average(T &a, T &b)
{
return (a+b)/2;
} 楼上的说法有问题吧?现在是返回类型不同,两个参数可都是int的,那么如何用重载或模板来区分不同的函数代码段?貌似C++里面并不具有这个功能,看来要想想别的方法。比如设置一个标志参数,就像重载i++和++i一样。或者就用高精度的返回值,然后转回低精度的。
页:
[1]

