函数名字相同,输入参数一样,但返回的类不同,怎么实现?

jacksoncan 2014-10-23 11:19:44
想写一个通用的函数,函数名字相同,输入参数一样,但返回的类不同,怎么实现?用泛型吗?如果是,能否给个例子?因为我现在还没用过泛型,谢谢。
...全文
410 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
失落的神庙 2014-10-23
  • 打赏
  • 举报
回复
引用 5 楼 feiyun0112 的回复:
private T GetDataType<T>(int i)
引用 6 楼 jacksoncan 的回复:
[quote=引用 4 楼 wawd74520 的回复:]

private  object GetDataType(int i)
{....}
那这样吧。 接收到返回值得判断
但这要装箱拆箱啊,能否用泛型或其他方式实现? [/quote]
  int Swap<T>(int i)
        {
            return i;
        }
        string Swap<T>(string i)
        {
            return i;
        }
类似这样? 受教
失落的神庙 2014-10-23
  • 打赏
  • 举报
回复
引用 6 楼 jacksoncan 的回复:
[quote=引用 4 楼 wawd74520 的回复:]

private  object GetDataType(int i)
{....}
那这样吧。 接收到返回值得判断
但这要装箱拆箱啊,能否用泛型或其他方式实现? [/quote] 你在调用该方法时知道返回值类型么? 不知道。那肯定得判断呀。
jacksoncan 2014-10-23
  • 打赏
  • 举报
回复
引用 4 楼 wawd74520 的回复:

private  object GetDataType(int i)
{....}
那这样吧。 接收到返回值得判断
但这要装箱拆箱啊,能否用泛型或其他方式实现?
feiyun0112 2014-10-23
  • 打赏
  • 举报
回复
private T GetDataType<T>(int i)
失落的神庙 2014-10-23
  • 打赏
  • 举报
回复

private  object GetDataType(int i)
{....}
那这样吧。 接收到返回值得判断
jacksoncan 2014-10-23
  • 打赏
  • 举报
回复
引用 1 楼 wawd74520 的回复:
void Fun(ref int a){} void Fun(ref string a){}
不对啊,输入参数必须相同的,但返回类型要不一样,比如:


private  OleDbType.VarChar GetDataType(int i)
{....}

private  OleDbType.Date GetDataType(int i)
{....}

失落的神庙 2014-10-23
  • 打赏
  • 举报
回复
void Fun(ref object a)
{
      if(a is int)
{
a=2;
}
else if(a is string)
{
a="dsa";
}
}
试试。 我也是瞎想的。
失落的神庙 2014-10-23
  • 打赏
  • 举报
回复
void Fun(ref int a){} void Fun(ref string a){}

111,097

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧