为什么Visual Studio 2010编译器不知道__func__?

时间:2016-04-15 09:46:03

标签: c++ visual-studio-2010

标题说明了一切。它知道

  • __FUNCTION__:功能裸名称
  • __FUNCSIG__:函数的完整名称(带有返回类型和参数)
  • __FUNCDNAME__:功能损坏的名称

但不是__func__,尽管它是part of the C99 standard。我希望我的代码与平台无关,所以我不愿意使用上面的其中一个。你有什么建议吗?谢谢!

1 个答案:

答案 0 :(得分:2)

微软支持C99一直都是非常粗略的。

根据Microsoft网站上的这个predefined macro列表,它在Visual Studio 2015中得到支持。看起来最早支持它的版本是Visual Studio 2013,所以如果你真的需要,你可能需要升级使用那个宏。