pop_macro
pragma
macro-name マクロの値を、このマクロのスタックの最上部の値に設定します。
構文
#pragma pop_macro(
"macro-name")
解説
macro-name の push_macro
は、pop_macro
を実行する前に発行する必要があります。
例
// pragma_directives_pop_macro.cpp
// compile with: /W1
#include <stdio.h>
#define X 1
#define Y 2
int main() {
printf("%d",X);
printf("\n%d",Y);
#define Y 3 // C4005
#pragma push_macro("Y")
#pragma push_macro("X")
printf("\n%d",X);
#define X 2 // C4005
printf("\n%d",X);
#pragma pop_macro("X")
printf("\n%d",X);
#pragma pop_macro("Y")
printf("\n%d",Y);
}
1
2
1
2
1
3