全局函数可以采用块参数吗?

时间:2014-08-29 01:35:39

标签: objective-c objective-c-blocks

我正在编写一个为数学实用程序库实现Secant Method的函数。

我真的很想用以下语法调用该函数:

double rootSecantMethod((double (^)(double))f, double x1, double x2, double xtol); 

f块实现正在解决的功能。

这是一个全球性的功能"因为它存在于Objective-C类之外。我不确定这是否是正确的术语,但我不想把它称为" C函数"因为它是用objc支持编译的。

有没有办法将块参数传递给一个存在于类之外的函数,或者编译器不支持这个?

1 个答案:

答案 0 :(得分:3)

问题在于您将参数名称放在错误的位置:

double rootSecantMethod(double (^f)(double), double x1, double x2, double xtol);