林不知道这是可能的。即时通讯使用一个方法,采用参数int,但我发现自己在一种情况下,我需要能够使用浮点值。有谁知道是否有改变预定义方法可以采用的参数?是否可以更改预定义方法在C#中可以使用的参数?
感谢所有 最佳 亚历
林不知道这是可能的。即时通讯使用一个方法,采用参数int,但我发现自己在一种情况下,我需要能够使用浮点值。有谁知道是否有改变预定义方法可以采用的参数?是否可以更改预定义方法在C#中可以使用的参数?
感谢所有 最佳 亚历
C#有泛型他类型的要求,要运用参数输入
的例如类型的逻辑淡然道:
T foo<T>(T param)
{
return param + 1;
}
//and it can be used like this
int i;
foo<int>(i); // return type is int
float f;
foo<float>(f); // return type is float
非常感谢这真的很有帮助!当我得到一个15生病的代表给你所有的投票。最好的Alex – AlexC
成员重载意味着创建两个或多个相同类型的成员,这些成员仅在参数的数量或类型上有所不同,但名称相同。 - Microsoft MSDN
// your method
public static double Inc(int i)
{
return i + 1;
}
// your method (overloaded)
public static double Inc(double d)
{
return d + 1;
}
int i = Inc(3);
double d = Inc(2.0); // You can use the same method with different parameter types
网站www.dotnetperls.com有很多很好的例子。如果你想看到除MSDN以外的其他解释,你可以阅读this。
非常感谢这真的很有帮助!当我得到一个15生病的代表给你所有的投票。最好的Alex – AlexC
您可以为这些方法定义一个通用类。
public class GenericMethodsClass<T>
{
public static T myMethod(T sumNumber)
{
// whatever you need for code here
return sumNumber;
}
}
呼唤:
GenericMethodsClass<int>.myMethod(1);
GenericMethodsClass<double>.myMethod(1.2);
非常感谢这真的很有帮助!当我得到一个15生病的代表给你所有的投票。最好的亚历克斯 – AlexC
现在你可以做到这一点 –
您是否尝试过重载方法? –
只需将其转换为int(int),或者在其周围编写您自己的封装,它接受浮点数并在内部强制转换为int。 – jamesbascle
谢谢大家!今天我学到了很多。所有最好的 – AlexC