__COUNTER__宏可移植吗? [英] Is __COUNTER__ macro portable?
本文介绍了__COUNTER__宏可移植吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一段代码使用__COUNTER__
宏生成变量的唯一名称.
I have a piece of code which uses __COUNTER__
macro to generate unique names for variables.
此代码可移植吗?我知道GCC和MSVS支持它.什么是其他编译器?宏是由标准定义的(据我所知,在C ++ 14之前不是).
Is this code portable ? I know that GCC and MSVS support it. What's about other compilers ? Is the macro defined by standard (as far as I know before C++14 it wasn't).
推荐答案
这绝对不是非标准.
这是一个编译器扩展( GNU C扩展)
It's a compiler extension (GNU C extensions)
常见的预定义宏是GNU C扩展.
The common predefined macros are GNU C extensions.
和 Microsoft专用的,
Microsoft特定的预定义宏:
Microsoft-Specific Predefined Macros:
__计数器__
还被 clang 作为语言扩展支持.
also supported by clang as language extension.
这篇关于__COUNTER__宏可移植吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文