Perhaps the title isn t clear in itself...
I have a function f (provided by some library) that takes as an argument a function pointer of signature void g(int*)
, i.e.
void f(void (*g)(int*));
然而,我愿利用<条码>g(我定义的)签字<条码>(避免g(const int*)。 事先,我可以看一看这如何违反任何最正确之处,因为所有签署<代码>f。 也就是说,g
将只打上(无<条码>const>int*
(无<条码>const),而且实际上,我可以称之为“<条码>,避免(最有条码的)功能,但无<条码>。
但是,海湾合作委员会抱怨说,
expected void (*)(int *) , but argument is of type void (*)(const int *)
我看不出这一申诉如何合法,任何人都知道我是否理解这是错误的,或者是否有办法解决这一问题?