更改局部变量的值
重要
在 Visual Studio 2015 中,这种实现表达式计算器的方法已弃用。 有关实现 CLR 表达式计算器的信息,请参阅 CLR 表达式计算器和托管表达式计算器示例。
在“局部变量”窗口的值字段中键入新值时,调试包会将输入的字符串传递给表达式计算器 (EE)。 EE 计算此字符串,该字符串可以包含简单值或表达式,并将生成的值存储在关联的局部变量中。
这是更改局部变量值的过程概述:
用户输入新值后,Visual Studio 会在与局部变量关联的 IDebugProperty2 对象上调用 SetValueAsString。
IDebugProperty2::SetValueAsString
执行下列任务:计算用于生成值的字符串。
绑定关联的 IDebugField 对象,以获取 IDebugObject 对象。
将值转换为一系列字节。
调用 SetValue 以将值的字节放入内存中,以便调试的程序可以访问。
Visual Studio 刷新局部变量显示(有关详细信息,请参阅显示局部变量)。
此程序还用于更改“监视”窗口中变量的值,只不过使用的是与使用局部变量的值关联的
IDebugProperty2
对象,而不是与局部变量本身关联的IDebugProperty2
对象。
本节内容
更改值的示例实现使用 MyC EE 示例逐步介绍更改值的过程。