【发布时间】:2015-12-13 19:51:56
【问题描述】:
我已经定义了一些函数,并像这样打印它们的地址:
#include<iostream>
#include <string>
using std::cout;
std::string func()
{
return "hello world\n";
}
int func2(int n)
{
if (n==0)
{
cout << func2 << std::endl;
return 1;
}
cout << func2 << std::endl;
return n + func2(n - 1);
}
//================================================
int main()
{
int (*fun)(int) = func2;
cout << fun;
cout << std::endl << func2(3);
}
当我打印函数的名称(地址)时,它们都会在我的编译器(Mingw gcc 4.8)上打印1。
可以还是应该有所不同?
【问题讨论】: