本文整理汇总了C#中DynValue.CastToNumber方法的典型用法代码示例。如果您正苦于以下问题:C# DynValue.CastToNumber方法的具体用法?C# DynValue.CastToNumber怎么用?C# DynValue.CastToNumber使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DynValue
的用法示例。
在下文中一共展示了DynValue.CastToNumber方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: EvalArithmetic
private double EvalArithmetic(DynValue v1, DynValue v2)
{
double? nd1 = v1.CastToNumber();
double? nd2 = v2.CastToNumber();
if (nd1 == null || nd2 == null)
throw new DynamicExpressionException("Attempt to perform arithmetic on non-numbers.");
double d1 = nd1.Value;
double d2 = nd2.Value;
switch (m_Operator)
{
case Operator.Add:
return d1 + d2;
case Operator.Sub:
return d1 - d2;
case Operator.Mul:
return d1 * d2;
case Operator.Div:
return d1 / d2;
case Operator.Mod:
{
double mod = Math.IEEERemainder(d1, d2);
if (mod < 0) mod += d2;
return mod;
}
default:
throw new DynamicExpressionException("Unsupported operator {0}", m_Operator);
}
}