macro
ãããã°ç¨ã®ãã¯ãçã§æã å¿ è¦ã¨ãªãï¼ã¦ãã¼ã¯ãªã·ã³ãã«å(é¢æ°åã¨ãå¤æ°å)ãèªåçæãããã¯ã #define CAT_I(a,b) a##b #define CAT(a,b) CAT_I(a,b) #define UNIQSYM(tag) CAT(tag, __LINE__) 使ãæ¹ã¯ãããªæã int UNIQSYM(hogehoge) = 123; ãâ¦
dereferencing type-punned pointer will break strict-aliasing ã®è¦åãåé¿ããæ¹æ³ï¼C/C++ã§ã¯ï¼ä»¥ä¸ã®ãããªType-punned pointerã使ãã³ã¼ãã¯ï¼å³å¯ã«ã¯åä½ãä¿è¨¼ã§ããªãï¼ float f = 123; uint32_t u = *(uint32_t*)&f; ãã®ãããªã³ã¼ãã¯ï¼ä¾ãâ¦