您的位置:首页 > 移动开发

__FUNCTION__ predefined macro cannot appear outside of a function body

2016-09-26 16:17 260 查看
       在Visual Studio 2005中,默认情况下,此特性是激活的,但不能与/EP和/P编译选项同时使用。请注意在IDE环境中,不能识别__func__ ,而要用__FUNCTION__ 代替。

  Comeau的用户也应使用 __FUNCTION__ ,而不是 __func__ 。

  C++ BuilderX的用户则应使用稍稍不同的名字:__FUNC__ 。

  GCC 3.0及更高的版本同时支持 __func__ 和__FUNCTION__ 。

  可自动获取当前函数名。

QT :调整一下头文件的顺序就OK了 ? Not。 

#define Show(a) MyShow(a, __FUNCTION__)   //避免了重定义的问题!   要把它包起来

void MyShow(int size, char *path="")

{

    printf("This fake error is in [ %s ]  on line [%d]\n", path, __LINE__);

}

VS : #include "stdafx.h" 


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  宏定义