问题描述
为什么 pfunc(args)
和 (*pfunc)(args)
都是正确的?
它们之间有什么区别吗?
这是code snippet:
#include <stdio.h>
template<typename T>
T abs(T x)
{
return x>=0?x:-x;
}
int main()
{
double (* foo)(double x) = abs<double>;
printf("%d\n",abs<int>(-45));
printf("%lf\n",(*foo)(6.9)); //Why both pfunc(args) and (*pfunc)(args) are correct?
printf("%lf\n",foo(1.5));
}
还有一个问题,为什么编译器会抱怨 double (fun)(double x) = abs<double>;
?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)