c – 显示功能的完全限定名称

前端之家收集整理的这篇文章主要介绍了c – 显示功能的完全限定名称前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
#include <iostream>
class A{
    public:
    void myfunction(){
        std::cout << __func__; 
    }
};
int main(){
    A obj;
    obj.myfunction();
}

输出是myfunction.不幸的是__funct__不起作用.如何输出成员函数的完全限定名,即A :: myfunction?

解决方法

没有标准的定义方式.但是,如果您使用的是gcc,则可以使用__PRETTY_FUNCTION__而不是__func__.

标准C(即C 03)没有__func__或__PRETTY_FUNCTION__.

C 0x从C99派生__func__,它在8.4.2 / 8(n3290)中定义

The function-local predefined variable __func__ is defined as if a definition of the form

static const char __func__[] = "function-name ";

had been provided,where function-name is an implementation-defined string

猜你在找的C&C++相关文章