다음을 통해 공유


C/C++ 매크로 확장 시각화

긴 매크로는 읽기 어려울 수 있습니다. 이제 Visual Studio에서 C 및 C++ 매크로를 확장할 수 있습니다. 확장된 매크로의 모양을 클립보드에 복사하고, 매크로 인라인을 확장으로 바꾸고, 매크로를 단계별로 확장하여 각 확장 단계에서 어떻게 표시되는지 확인할 수 있습니다. 이 문서에서는 이러한 모든 기능을 실험합니다.

필수 조건

  • Visual Studio 버전 17.5 이상

샘플 만들기

  1. Visual Studio 2022 버전 17.5 이상을 시작하고 C++ 콘솔 앱을 만듭니다.

  2. 기본 코드를 다음으로 바꿉다.

    #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;
    }
    

확장된 매크로 복사

다음 단계를 사용하여 여러 전처리기 단계가 관련된 경우에도 매크로의 확장된 값을 검사할 수 있습니다.

  1. 예제의 내부 main() 매크로에 POWER 커서를 놓습니다.

  2. 매크로를 마우스로 가리키면 복사, 인라인 확장, 확장 시각화 및 온라인 검색 옵션이 나타납니다.

    POWER 매크로 확장을 보여 주는 매크로 창의 스크린샷

    매크로 창은 POWER에서 열리고 (((10.0 * 20.0) * (5.0 * 2.0)) / 2.0으로 확장됨을 표시합니다. 복사, 인라인 확장, 시각적 확장 및 온라인 검색 옵션이 창 아래쪽에 표시됩니다.

  3. 복사를 선택합니다.

  4. 줄 다음에 메모를 만들고 붙여넣기 POWER (Ctrl+V)를 선택합니다. 매크로의 확장은 매크로 근처의 메모로 표시됩니다 // (((10.0 * 20.0)* (5.0 * 2.0)) / 2.0). . 이 매크로 함수의 바로 가기 키는 Ctrl+M, Ctrl+C입니다.

매크로 인라인 확장

다음 단계를 사용하여 매크로 인라인을 확장하여 매크로를 확장으로 바꿉니다.

  1. 예제의 내부 main() 매크로에 POWER 커서를 놓습니다.
  2. 매크로를 마우스로 가리키면 복사, 인라인 확장, 확장 시각화 및 온라인 검색 옵션이 표시됩니다.
  3. 인라인 확장을 선택합니다. 매크로가 POWER() 확장된 값 std::cout << "Power: " << (((10.0 * 20.0) * (5.0 * 2.0)) / 2.0) << std::endl;으로 대체됩니다. 이 작업의 바로 가기 키는 Ctrl+M, Ctrl+I입니다.

매크로 확장 시각화

매크로를 한 번에 한 단계씩 확장할 수 있습니다. 이 기능은 중첩된 매크로가 있고 확장을 단계별로 확인하려는 경우에 유용합니다. 매크로의 매크로 확장을 WORK 시각화하려면 다음 단계를 사용합니다.

  1. 예제의 내부 main() 매크로에 WORK 커서를 놓습니다.

  2. 매크로를 마우스로 가리키면 복사, 인라인 확장, 확장 시각화 및 온라인 검색 옵션이 나타납니다.

  3. 확장 시각화를 선택합니다. 이 작업의 바로 가기 키는 Ctrl+M 뒤에 Ctrl+V가 잇는 것입니다.

  4. 매크로 확장 창이 나타납니다. 매크로의 WORK 첫 번째 확장이 표시됩니다 (FORCE() * DISTANCE()).

    WORK 매크로 확장을 한 번에 한 단계씩 실행할 수 있는 매크로 확장 창의 스크린샷

    매크로 시각화 창은 FORCE에서 열리고 처음에는 (FORCE()*DISTANCE())로 확장됨을 보여 줍니다. 창에는 한 번에 하나의 확장을 앞뒤로 이동하기 위한 단일 꺾쇠 괄호가 있습니다. 이중 꺾쇠 괄호는 매크로 확장을 완전히 확장하거나 완전히 실행 취소합니다.

  5. 오른쪽 꺾쇠 괄호를 클릭하여 매크로를 확장합니다 FORCE . 이제 창에 매크로 확장(MASS * ACCELERATION) * DISTANCE()FORCE 표시됩니다.

  6. 오른쪽 꺾쇠 괄호를 클릭하여 다른 단계를 확장합니다. 이제 창에 매크로 확장((10.0 * ACCELERATION) * DISTANCE())FORCE 표시됩니다.

매크로를 계속 확장하여 매크로의 WORK ((10.0 * 20.0) * (5.0 * 2.0))전체 확장을 확인합니다. 이중 꺾쇠 괄호를 사용하여 매크로를 완전히 확장하거나 확장을 첫 번째 확장 수준으로 되돌릴 수 있습니다.

참고 항목

Visual Studio에서 UE 매크로 보기