不兼容的块指针类型初始化浮点数
Incompatible block pointer type initializing float
我不确定如何让它工作:我在想一些与 typedef 有关的东西,但我找不到太多关于这个主题的东西。
float (^pixelsToDistance)(float, float, NSString *) = ^(float distance, float scale, NSString *conversion)
{
// Code goes here
}
我正在尝试从这个块函数中 return 一个浮点值。
我应该改用函数吗?
你很接近。你想要:
float (^pixelsToDistance)(float, float, NSString *) = ^float(float distance, float scale, NSString *conversion) { ... };
注意赋值运算符右侧 ^
后的 return 类型。
正如评论员指出的那样,如果编译器清楚您要从块中 return 获取什么,则可以省略 return 类型。例如:
float (^pixelsToDistance)(float, float, NSString *) = ^(float distance, float scale, NSString *conversion) { return 0.0f };
我不确定如何让它工作:我在想一些与 typedef 有关的东西,但我找不到太多关于这个主题的东西。
float (^pixelsToDistance)(float, float, NSString *) = ^(float distance, float scale, NSString *conversion)
{
// Code goes here
}
我正在尝试从这个块函数中 return 一个浮点值。 我应该改用函数吗?
你很接近。你想要:
float (^pixelsToDistance)(float, float, NSString *) = ^float(float distance, float scale, NSString *conversion) { ... };
注意赋值运算符右侧 ^
后的 return 类型。
正如评论员指出的那样,如果编译器清楚您要从块中 return 获取什么,则可以省略 return 类型。例如:
float (^pixelsToDistance)(float, float, NSString *) = ^(float distance, float scale, NSString *conversion) { return 0.0f };