C/C++ 매크로 확장 시각화
긴 매크로는 읽기 어려울 수 있습니다. 이제 Visual Studio에서 C 및 C++ 매크로를 확장할 수 있습니다. 확장된 매크로의 모양을 클립보드에 복사하고, 매크로 인라인을 확장으로 바꾸고, 매크로를 단계별로 확장하여 각 확장 단계에서 어떻게 표시되는지 확인할 수 있습니다. 이 문서에서는 이러한 모든 기능을 실험합니다.
필수 조건
- Visual Studio 버전 17.5 이상
샘플 만들기
Visual Studio 2022 버전 17.5 이상을 시작하고 C++ 콘솔 앱을 만듭니다.
기본 코드를 다음으로 바꿉다.
#include <iostream> #define MASS 10.0 #define ACCELERATION 20.0 #define SPEED 5.0 #define TIME 2.0 #define DISTANCE() (SPEED * TIME) #define FORCE()(MASS * ACCELERATION) #define WORK()(FORCE() * DISTANCE()) #define POWER()(WORK()/TIME) int main() { std::cout << "Distance: " << DISTANCE() << std::endl; std::cout << "Force: " << FORCE() << std::endl; std::cout << "Work: " << WORK() << std::endl; std::cout << "Power: " << POWER() << std::endl; }
확장된 매크로 복사
다음 단계를 사용하여 여러 전처리기 단계가 관련된 경우에도 매크로의 확장된 값을 검사할 수 있습니다.
예제의 내부
main()
매크로에POWER
커서를 놓습니다.매크로를 마우스로 가리키면 복사, 인라인 확장, 확장 시각화 및 온라인 검색 옵션이 나타납니다.
매크로 창은 POWER에서 열리고 (((10.0 * 20.0) * (5.0 * 2.0)) / 2.0으로 확장됨을 표시합니다. 복사, 인라인 확장, 시각적 확장 및 온라인 검색 옵션이 창 아래쪽에 표시됩니다.
복사를 선택합니다.
줄 다음에 메모를 만들고 붙여넣기
POWER
(Ctrl+V)를 선택합니다. 매크로의 확장은 매크로 근처의 메모로 표시됩니다// (((10.0 * 20.0)* (5.0 * 2.0)) / 2.0).
. 이 매크로 함수의 바로 가기 키는 Ctrl+M, Ctrl+C입니다.
매크로 인라인 확장
다음 단계를 사용하여 매크로 인라인을 확장하여 매크로를 확장으로 바꿉니다.
- 예제의 내부
main()
매크로에POWER
커서를 놓습니다. - 매크로를 마우스로 가리키면 복사, 인라인 확장, 확장 시각화 및 온라인 검색 옵션이 표시됩니다.
- 인라인 확장을 선택합니다. 매크로가
POWER()
확장된 값std::cout << "Power: " << (((10.0 * 20.0) * (5.0 * 2.0)) / 2.0) << std::endl;
으로 대체됩니다. 이 작업의 바로 가기 키는 Ctrl+M, Ctrl+I입니다.
매크로 확장 시각화
매크로를 한 번에 한 단계씩 확장할 수 있습니다. 이 기능은 중첩된 매크로가 있고 확장을 단계별로 확인하려는 경우에 유용합니다. 매크로의 매크로 확장을 WORK
시각화하려면 다음 단계를 사용합니다.
예제의 내부
main()
매크로에WORK
커서를 놓습니다.매크로를 마우스로 가리키면 복사, 인라인 확장, 확장 시각화 및 온라인 검색 옵션이 나타납니다.
확장 시각화를 선택합니다. 이 작업의 바로 가기 키는 Ctrl+M 뒤에 Ctrl+V가 잇는 것입니다.
매크로 확장 창이 나타납니다. 매크로의
WORK
첫 번째 확장이 표시됩니다(FORCE() * DISTANCE())
.매크로 시각화 창은 FORCE에서 열리고 처음에는 (FORCE()*DISTANCE())로 확장됨을 보여 줍니다. 창에는 한 번에 하나의 확장을 앞뒤로 이동하기 위한 단일 꺾쇠 괄호가 있습니다. 이중 꺾쇠 괄호는 매크로 확장을 완전히 확장하거나 완전히 실행 취소합니다.
오른쪽 꺾쇠 괄호를 클릭하여 매크로를 확장합니다
FORCE
. 이제 창에 매크로 확장(MASS * ACCELERATION) * DISTANCE()
이FORCE
표시됩니다.오른쪽 꺾쇠 괄호를 클릭하여 다른 단계를 확장합니다. 이제 창에 매크로 확장
((10.0 * ACCELERATION) * DISTANCE())
이FORCE
표시됩니다.
매크로를 계속 확장하여 매크로의 WORK
((10.0 * 20.0) * (5.0 * 2.0))
전체 확장을 확인합니다.
이중 꺾쇠 괄호를 사용하여 매크로를 완전히 확장하거나 확장을 첫 번째 확장 수준으로 되돌릴 수 있습니다.