【发布时间】:2013-09-11 13:15:32
【问题描述】:
在下面的代码中,似乎无法获取第二个函数的正确地址。
Ideone 链接:http://ideone.com/r07UZc
#include <stdio.h>
class A
{
public:
__attribute__((noinline)) int func1();
__attribute__((noinline)) int func2();
};
int A::func1()
{
return 1;
}
int A::func2()
{
return 2;
}
int main()
{
printf("%p %p\n", &A::func1, &A::func2);
return 0;
}
打印的值为:0x80484d0 (nil)
第一个地址似乎是正确的,但不是第二个。为什么?
【问题讨论】:
-
我敢打赌,这可以被 CVed 为骗子。
标签: c++