ํฌ์ŠคํŠธ

๐ŸŒ’ CPP ๋งคํฌ๋กœ #, ## ์—ฐ์‚ฐ์ž

๐Ÿ’Ž # ์—ฐ์‚ฐ์ž


1
2
3
4
5
6
7
8
9
10
#define DEFINE_STRING(token) string #token;

// Define String Variable Temp
DEFINE_STRING(Temp);

#define PRINT_TOKEN(token) printf(#token " is %d", token)

// Print "intVariable is 4444"
int intVariable = 4444;
PRINT_TOKEN(intVariable);

๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๋ฌธ์ž์—ด๋กœ

๐Ÿ’Ž ## ์—ฐ์‚ฐ์ž


1
2
3
4
5
6
7
8
9
10
11
12
#define DEFINE_INT_X(token) int x##token = token;

// Define Int Variable x1
DEFINE_INT_X(3);

#define CALL_FUNC(token) SomeObj->SomeFunc##token()

// Call SomeObj->SomeFuncA()
CALL_FUNC(A);

// Call SomeObj->SomeFuncTemp()
CALL_FUNC(TEMP);

๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๋ฌธ์ž์—ด๋กœ ๋งŒ๋“ค๊ณ  ๋‹ค๋ฅธ ํ† ํฐ๊ณผ ํ•ฉ์นจ

์ด ๊ธฐ์‚ฌ๋Š” ์ €์ž‘๊ถŒ์ž์˜ CC BY 4.0 ๋ผ์ด์„ผ์Šค๋ฅผ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.