using System;
using System.Linq.Expressions;
class Program
{
static void Main()
{
// 创建参数表达式
ParameterExpression num1 = Expression.Parameter(typeof(int), "num1");
ParameterExpression num2 = Expression.Parameter(typeof(int), "num2");
// 创建加法表达式
BinaryExpression addExpression = Expression.Add(num1, num2);
// 创建Lambda表达式
Expression<Func<int, int, int>> lambda = Expression.Lambda<Func<int, int, int>>(addExpression, num1, num2);
// 编译成委托
Func<int, int, int> addFunction = lambda.Compile();
// 调用委托并获取结果
int result = addFunction(3, 5);
Console.WriteLine($"计算结果: {result}");
}
}