[완료] #ifdef와 #define 을 이용하여 const키워드를 무효화하는 트릭의 예를 들어주세요

pr4nkst3r의 이미지

어떤 전역변수를 헤더 파일에서 const로 extern선언해주고, 이 변수를 정의하는 본문에서는 #ifdef와 #define을 이용하여 const키워드를 무효화하는 트릭을 이용하여 외부로부터의 쓰기 접근만을 통제하는 편법이 가능하다고 하는데.. 그 예를 들어주셨음 합니다.

오호라의 이미지

내용을 충분히 이해하고 계신듯한데요.

더 이상 무엇이 필요할까요?

글을 읽으면 코드가 그냥 그려지는데요. ^^;

Hello World.

pr4nkst3r의 이미지

비슷하게는 그려지는데 정확히 어떻게 해야할지 모르겠어요 알려주세요

ktd2004의 이미지

이런식인가요?

#ifdef NO_CONST
#define CONST
#else
#define CONST const
#endif
 
 
CONST int a = 3;
Hyun의 이미지

헤더파일이 이렇지 않을까요?

#ifdef NO_EXCONST
#define EXCONST extern
#else
#define EXCONST extern const
#endif
 
EXCONST int var1;
EXCONST int var2;

다른 모듈에서 include할 땐 NO_EXCONST 없이 include하고 자기 모듈에서 include할 땐 NO_EXCONST 선언 후 include 하면 될꺼같은데...
나도 세벌식을 씁니다