매크로 및 C++

C++는 새로운 기능을 제공하며, 그 중 일부는 ANSI C 전처리기에서 제공하는 기능을 대체합니다. 이 새로운 기능으로 형식이 더욱 안전해지고 효과적으로 언어를 예측할 수 있습니다.

  • C++에서 선언된 개체는 const 상수 식에서 사용할 수 있습니다. 프로그램에서 형식 및 값 정보가 있는 상수의 선언을 허용합니다. 디버거를 사용하여 기호적으로 볼 수 있는 열거형을 선언할 수 있습니다. 전처리기 #define 지시문을 사용하여 상수 정의는 정확하지 않고 형식이 안전하지 않습니다. 프로그램에 주소를 사용하는 식이 포함되어 있지 않으면 개체에 대해 const 스토리지가 할당되지 않습니다.

  • C ++ 인라인 함수 기능은 함수 형식 매크로를 대신합니다. 인라인 함수를 사용하면 매크로에 비해 다음과 같은 이점이 있습니다.

    • 형식 안전성. 인라인 함수는 일반 함수와 똑같은 함수 검사를 받습니다. 매크로는 형식이 안전하지 않습니다.

    • 의도하지 않은 결과가 생기는 인수를 올바르게 처리. 인라인 함수는 함수 본문을 입력하기 전에 인수로 제공된 식을 평가합니다. 따라서 부작용이 있는 식이 안전하지 않을 가능성은 없습니다.

인라인 함수 에 대한 자세한 내용은 인라인, __inline, __forceinline 참조하세요.

이전 버전과의 호환성을 위해 ANSI C 및 이전의 C++ 사양에 있는 모든 전처리기 기능이 Microsoft C++에 대해 유지됩니다.

참고 항목

미리 정의된 매크로
매크로(C/C++)