2012-10-21 18 views
0

可能重复:
What do # and ## operators do in C?#符号是否在C中有任何定义?

似乎不是我能到Word这个问题的正确谷歌查询,所以我会决定问你了不起的人。

我见过#被用在宏定义中,但它到底意味着什么?

参考:http://www.flipcode.com/archives/Faking_Templates_In_C.shtml

这引出一个问题,二次,使用宏来实现在C++模板?

+1

至于C++部分:不,根本不是。 – Mat

+0

'hash'是'#'的通用术语。 –

回答

2

阅读关于cpp preprocessor的GCC文档。该#符号用于宏参数stringification,并为concatenation

C++模板不作为预处理文本宏双##。你可能会觉得它们是宏的产生(C++的一些核心子集)。

FYI,Common Lisp有一个更强大的宏观系统。

0

## concats两个令牌一起,在type##_InitVector的情况下,内容type_InitVector

相关问题