在使用 Visual Studio 2017(确切地说是 15.5.6)中的 Visual C++ 时,我注意到__PRETTY_FUNCTION__
来自 GCC 似乎有效! - 至少在某种程度上……
It did show up along suggestions while typing:
Also it had its value shown in tooltip as expected:
然而使用编译代码__PRETTY_FUNCTION__
结果出现错误:
error C2065: '__PRETTY_FUNCTION__': undeclared identifier
那么,有什么方法可以让它在 Visual C++ 中运行吗?有些可能包括?或者一些特殊的编译设置? (我想我正在使用默认的。)为什么它在显示的示例中有效,但在实际使用中却不起作用?!
请注意,我并不是在寻找 Visual C++ 替代品__PRETTY_FUNCTION__
。我已经认识他们了。我只是对这里的行为感到惊讶和好奇。
那么,有什么方法可以让它在 Visual C++ 中运行吗?有些可能包括?或者一些特殊的编译设置? (我想我正在使用默认的。)为什么它在显示的示例中有效,但在实际使用中却不起作用?!
No.
Visual Studio 使用爱迪生设计集团 http://www.edg.com/IntelliSense 的 C++ 前端,如 Visual C++ 团队博客中所述重建智能感知 https://blogs.msdn.microsoft.com/vcblog/2009/05/27/rebuilding-intellisense/ and here https://blogs.msdn.microsoft.com/vcblog/2017/03/07/use-any-c-compiler-with-visual-studio/,而不是 Microsoft C++ 编译器。这意味着 Intellisense 可用的某些功能在编译时不可用。
EDG's C++ 前端文档 http://www.edg.com/docs/edg_cpp.pdf提到它支持一些 GCC 预定义,例如__PRETTY_FUNCTION__
第 71 页 - “1.13 预定义宏”以及 Microsoft 的__FUNCSIG__
.
您甚至可以通过输入来查看 EDG 的版本__EDG_VERSION__
并悬停在它上面。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)