从 XCode 的调试器调用块

Call a block from XCode's debugger

我可以从 XCode 调试器调用块吗?我刚试过:

po zoomCurve(0)

其类型为:

typedef CGFloat (^STAnimationCurveBlock)(CGFloat t);

调试器说:

error: called object type 'STAnimationCurveBlock' (aka '__block_literal_generic *') is not a function or function pointer error: 1 errors parsing expression

this answer所述,调试器似乎不知道块的类型。您需要将块转换为它的类型。在特定情况下,您有:

po ((CGFloat(^)(CGFloat))zoomCurve)(0.9)

出于某种原因,转换为 typdef 类型也不起作用,并给出相同的错误。具体来说,这将给出相同的错误:

po ((STAnimationCurveBlock)zoomCurve)(0.9)