JR_*_*JR_ 0 .net c# arduino .net-micro-framework netduino
我正在从Arduino(c语言)切换到Netduino(c#语言).
在我的arduino程序中,我有以下功能(内置):
我想将其转换为C#.我有以下代码:
int ConstrainValue(int value, int min, int max)
{
int Value = value;
int Min = min;
int Max = max;
if (Value >= Max)
{
Value = Max;
return Value;
}
else if (Value <= Max)
{
Value = Min;
return Value;
}
return Value;
}
Run Code Online (Sandbox Code Playgroud)
但是,我也希望能够将其用于double
数据类型.是否可以修改函数以便可以使用多种数据类型?
它是,使用IComparable
.
static T ConstrainValue<T>(T value, T min, T max) where T : IComparable
{
if (value.CompareTo(max) > 0)
return max;
else if (value.CompareTo(min) < 0)
return min;
return value;
}
Run Code Online (Sandbox Code Playgroud)