Export (0) Print
Expand All

pop_macro

Sets the value of the macro_name macro to the value on the top of the stack for this macro.

#pragma pop_macro("macro_name")

You must first issue a push_macro for macro_name before you can do a 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

Community Additions

ADD
Show:
© 2014 Microsoft