다음을 통해 공유


식 평가

자동, 조사식, 간략한 조사식 또는 직접 실행 창에서 전달된 문자열에서 식이 만들어집니다. 식이 평가될 때 변수 또는 인수의 이름과 형식, 해당 값이 포함된 출력 가능한 문자열을 생성합니다. 이 문자열은 해당 IDE 창에 표시됩니다.

구현

중단점에서 프로그램이 중지될 때 식이 평가됩니다. 식 자체는 지정된 식 평가 컨텍스트 내에서 바인딩 및 평가할 준비가 된 구문 분석된 식을 나타내는 IDebugExpression2 인터페이스가 나타냅니다. 스택 프레임은 DE(디버그 엔진)가 IDebugExpressionContext2 인터페이스를 구현하여 제공하는 식 평가 컨텍스트를 결정합니다.

사용자 문자열과 IDebugExpressionContext2 인터페이스가 지정된 경우 DE(디버그 엔진)는 사용자 문자열을 IDebugExpressionContext2::ParseText 메서드에 전달하여 IDebugExpression2 인터페이스를 가져올 수 있습니다. 반환되는 IDebugExpression2 인터페이스에는 평가할 준비가 된 구문 분석된 식이 포함되어 있습니다.

IDebugExpression2 인터페이스를 사용하면 DE는 IDebugExpression2::EvaluateSync 또는 IDebugExpression2::EvaluateAsync를 사용하여 동기 또는 비동기 식 평가를 통해 식 값을 가져올 수 있습니다. 변수 또는 인수의 이름, 형식과 함께 이 값은 표시를 위해 IDE로 전송됩니다. 값, 이름, 형식은 IDebugProperty2 인터페이스가 나타냅니다.

식 평가를 사용하도록 설정하기 위해 DE는 IDebugExpression2IDebugExpressionContext2 인터페이스를 구현해야 합니다. 동기 및 비동기 평가에는 모두 IDebugProperty2::GetPropertyInfo 메서드의 구현이 필요합니다.