다음을 통해 공유


식 계산기 구현 전략

중요합니다

Visual Studio 2015에서는 식 계산기를 구현하는 이러한 방법이 더 이상 사용되지 않습니다. CLR 식 계산기 구현에 대한 자세한 내용은 CLR 식 계산기관리 식 계산기 샘플을 참조하세요.

EE(식 계산기)를 빠르게 만드는 한 가지 방법은 먼저 지역 변수를 로컬 창에 표시하는 데 필요한 최소 코드를 구현하는 것입니다. Locals 창의 각 줄에 지역 변수의 이름, 형식 및 값이 표시되고 세 줄이 모두 IDebugProperty2 개체로 표현된다는 사실을 깨닫는 것이 유용합니다. 로컬 변수의 이름, 형식 및 값은 IDebugProperty2 메서드를 호출하여 개체에서 가져옵니다. 지역 창에 지역 변수를 표시하는 방법에 대한 자세한 내용은 로컬 표시를 참조하세요.

토론(Discussion)

가능한 구현 시퀀스는 IDebugExpressionEvaluator 구현부터 시작합니다. 로컬을 표시하려면 ParseGetMethodProperty 메서드를 구현해야 합니다. 호출 IDebugExpressionEvaluator::GetMethodPropertyIDebugProperty2 메서드, 즉 IDebugMethodField 개체를 나타내는 개체를 반환합니다. 메서드 자체는 로컬 창에 표시되지 않습니다.

다음으로 EnumChildren 메서드를 구현해야 합니다. DE(디버그 엔진)는 이 메서드를 호출하여 IDebugProperty2::EnumChildrenguidFilterguidFilterLocalsPlusArgs 인수로 전달하여 지역 변수와 인수 목록을 가져옵니다. IDebugProperty2::EnumChildren 는 결과를 단일 열거형으로 결합하여 EnumArgumentsEnumLocals를 호출합니다. 자세한 내용은 로컬 표시를 참조하세요.