int(* ptFunction)(float,char,char);
char func(float,char,char);
如果我们使用不同的返回类型,就像我们在上面的两个函数声明中所做的那样,下面的赋值是否会正常工作或者会给出编译错误?
ptFunction =& func;
答案 0 :(得分:0)
以下代码引发错误(以g ++为单位):
int (*pFun)(float, char, char);
char fun1(float, char, char) {}
int main() {
pFun = &fun1; // error: invalid conversion from char (*)(float, char, char) to int (*)(float, char, char)
return 0;
}