编写公共语言运行时表达式求值器

重要

在 Visual Studio 2015 中,这种实现表达式计算器的方法已弃用。 有关实现 CLR 表达式计算器的信息,请参阅 CLR 表达式计算器托管表达式计算器示例

表达式计算器(EE)是调试引擎(DE)的一部分,用于处理生成正在调试的代码的编程语言的语法和语义。 必须在编程语言的上下文中计算表达式。 例如,在某些语言中,表达式“A+B”表示“A 和 B 的总和”。在其他语言中,同一表达式可能表示“A 或 B”。因此,必须为生成要在 Visual Studio IDE 中调试的对象代码的每个编程语言编写单独的 EE。

Visual Studio 调试包的某些方面必须解释编程语言上下文中的代码。 例如,当执行在断点处停止时,必须计算并显示用户已键入到 监视 窗口中的任何表达式。 用户可以通过将表达式键入 “监视 ”窗口或 “即时 ”窗口来更改局部变量的值。

本部分内容

公共语言运行时和表达式计算 说明,将专有编程语言集成到 Visual Studio IDE 中时,编写能够在专有语言上下文中计算表达式的 EE,这样就可以在不编写调试引擎的情况下编译为Microsoft中间语言(MSIL)。

表达式计算器体系结构 讨论如何实现所需的 EE 接口并调用公共语言运行时符号提供程序(SP)和绑定器接口。

注册表达式求值器 指出,表达式求值器(EE)必须将自身注册为公共语言运行时和 Visual Studio 运行时环境中的类工厂。

实现表达式计算器 描述计算表达式的过程包括调试引擎(DE)、符号提供程序(SP)、绑定器对象和表达式计算器(EE)。

显示局部变量 描述执行暂停时调试包如何调用 DE 以获取局部变量和参数的列表。

评估监视窗口表达式 ,记录 Visual Studio 调试包如何调用 DE 来确定其监视列表中的每个表达式的当前值。

更改局部变量的值 说明,更改局部变量窗口的值时,局部变量窗口的每一行都有一个关联的对象,该对象提供本地的名称、类型和当前值。

实现类型可视化工具和自定义查看器 说明需要通过哪个组件实现哪个组件来支持类型可视化工具和自定义查看器。

Visual Studio 调试器扩展性