我想知道是否可以创建这样的方法:public var test (var value){ // ... return value;} 意思是,如果value是 a bool,我想返回 a bool,如果value是 a string,我想返回 a string,等等。
3 回答
慕雪6442864
TA贡献1812条经验 获得超5个赞
如果您的返回类型应该与value
参数的类型相同,您可以创建一个带有泛型参数的方法:
public T Test<T>(T value){ return value; }
您提到您也可以使用关键字来做到这一点,但我建议不要在这样的场景中dynamic
使用。dynamic
在某些特殊情况dynamic
下,应该使用泛型,但它主要在处理 COM 互操作时变得相关。
饮歌长啸
TA贡献1951条经验 获得超3个赞
根据您的最终声明,您希望返回在输入中收到的相同类型,因此,您可以使用通用函数来完成
public T test<T>(T input)
{
return input;
}
void Main()
{
Console.WriteLine(test(true));
Console.WriteLine(test(1));
Console.WriteLine(test("Steve"));
}
- 3 回答
- 0 关注
- 97 浏览
添加回答
举报
0/150
提交
取消