Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ __函数和朋友在Xcode中行为怪异_C++_Xcode_Function_Clang_C Preprocessor - Fatal编程技术网

C++ __函数和朋友在Xcode中行为怪异

C++ __函数和朋友在Xcode中行为怪异,c++,xcode,function,clang,c-preprocessor,C++,Xcode,Function,Clang,C Preprocessor,这很有效 printf("%s body\n",__PRETTY_FUNCTION__); 但这并不是(错误Expected')”): 我无法让IDE显示\uuu PRETTY\u函数的计算结果,以确定它为什么不工作 。它的行为类似于在该函数中动态创建的静态变量 上面链接的最后一段内容如下: 这些标识符不是预处理器宏。在GCC 3.3及更早版本中,仅在C语言中,\uuuuuuuuuuuuu函数和\uuuuuuuuu漂亮的函数被视为字符串文字;它们可以用于初始化字符数组,也可以与其他字符串文字连

这很有效

printf("%s body\n",__PRETTY_FUNCTION__);
但这并不是(错误
Expected')”
):

我无法让IDE显示
\uuu PRETTY\u函数的计算结果,以确定它为什么不工作

。它的行为类似于在该函数中动态创建的静态变量

上面链接的最后一段内容如下:

这些标识符不是预处理器宏。在GCC 3.3及更早版本中,仅在C语言中,
\uuuuuuuuuuuuu函数
\uuuuuuuuu漂亮的函数
被视为字符串文字;它们可以用于初始化字符数组,也可以与其他字符串文字连接。GCC 3.4及更高版本将其视为变量,如
\uuuuu func\uuuu
。在C++中,<>代码>函数> <代码> >代码>函数>函数>代码>始终是变量。< /P>
@sixletter不确定这是否是最好的参考,因为这个问题是关于clang的……但这也是我找到的第一个。@KonradRudolph:令人困惑的是,clang似乎将其定义为Microsoft的宏,而不是其他平台的宏。@sixletter显然是为了实现最高的兼容性(根据评论)–这是有道理的,但这很奇怪,因为MSVC甚至不知道
\uuu PRETTY\u FUNCTION\uuuu
(开发人员甚至在评论中提到了这一点)。
printf(__PRETTY_FUNCTION__" body\n");