IDebugMethodField:: EnumLocals

创建方法的选定的局部变量的枚举数。

HRESULT EnumLocals( 
   IDebugAddress*     pAddress,
   IEnumDebugFields** ppLocals
);
int EnumLocals(
   IDebugAddress        pAddress, 
   out IEnumDebugFields ppLocals
);

参数

  • pAddress
    [in] 表示选择上下文或范围访问本地的调试地址的 IDebugAddress 对象。

  • ppLocals
    [out] 返回表示本地的列表 IEnumDebugFields 对象;否则,; 如果没有本地用户,则返回 null 值。

返回值

如果成功,则返回 S_OK 或返回 S_FALSE,如果没有本地。 否则,返回错误代码。

备注

在包含给定的块中定义的变量只调试地址枚举。 如果所有本地包括任何编译器生成的本地是必需的,请调用 IDebugMethodField:: EnumAllLocals 方法。

方案可包含多个范围上下文或阻止。 例如,下面的阴影的方法包含三个范围,两个内部块和方法体。

public void func(int index)
{
    // Method body scope
    int a = 0;
    if (index == 1)
    {
        // Inner scope 1
        int temp1 = a;
    }
    else
    {
        // Inner scope 2
        int temp2 = a;
    }
}

IDebugMethodField 对象表示 func 方法。 例如调用与 IDebugAddressEnumLocals 方法设置为 Inner Scope 1 地址返回包含 temp1 变量的枚举,。

请参见

参考

IDebugMethodField

IDebugAddress

IEnumDebugFields

IDebugMethodField:: EnumAllLocals