• 2023-06-20NCalc 学习笔记 (二)
    简介NCalc是一个能够进行表达式计算的一系列程序集(Assembly)。我们主要使用 Expression 类,这个类有一个函数 Evaluate() 能够计算表达式的值。表达式采用字符串形式传入。举例:Expressione=newExpression("2*3");objectresult=e.Evaluate();Console.WriteL
  • 2023-06-20NCalc 学习笔记 (一)
    简单表达式Expressione=newExpression("2+3*5");Debug.Assert(17==e.Evaluate());计算.NET数据类型Debug.Assert(123456==newExpression("123456").Evaluate());//integersDebug.Assert(newDateTime(2001,01,01)==newExpression(&quo
  • 2023-06-20NCalc 学习笔记 (四)
    值值是代表具体元素的一个终端口令(Avalueisaterminaltokenrepresentingaconcreteelement),它可以是:+整数(Int32)+浮点数(Decimal)(与Double相比,有更高的精度和更小的取值范围)+科学计数(Double)+日期(DateTime)+布尔值(bool)+字符串(String)+函数+参数整数123
  • 2023-06-20NCalc 学习笔记 (三)
    运算符毋庸置疑,表达式支持各种基本的运算符。各种运算符的优先级由高到低如下: 原子运算符(,)单目运算符!,not,-,~(按位取反)幂次运算符(原文作者遗漏了,他写了位运算符&,|,^(xor),<<,>>)乘除运算符*,/,%加减运算符+,-关系运算符=,==,!=,<>,<,<=,
  • 2023-06-20NCalc 学习笔记 (五)
    函数NCalc本身已经实现的函数列表如下:函数名描述用例用例结果Abs返回绝对值Abs(-1)1MAcos返回余弦值对应的角度Acos(1)0dAsin--dAtan--dCeiling向上取整Ceiling(1.5)2dCos--dExp相当于e的X次幂Exp(0)1dFloor向下取整Flo
  • 2023-06-20NCalc 学习笔记 (六)
    参数静态参数静态参数可以在表达式求值前定义。用方括号括起来表示为静态参数。可以通过Expression对象中名为 Parameters 的字典来访问静态参数。Expressione=newExpression("2*[x]^2+5*[y]");e.Parameters["x"]=5;e.Parameters["y"]=1;Console.Writ