我在Xcode 6
中用F6
调试了下面的代码,执行顺序非常有趣。为什么Xcode的调试器使用Swift以这种方式跳转?
下面是代码 - 7行,断点在第1行设定:
let request = AWSDynamoDBPutItemInput()
request.tableName = "blah"
let card = AWSDynamoDBAttributeValue()
card.S = "1234"
let email = AWSDynamoDBAttributeValue()
email.S = "notset"
request.item = ["card_number" : card, "email" : email]
当我通过代码F6'd,它显示了以下序列(数字是行号):
1,2,4,2,3,4,6,4,5,6,7,6,7
这是为什么?这是Xcode还是语言?这些类在Amazon的AWS开发工具包中定义,不确定是否重要,它们是通过swift-objective-c桥接访问的,这可能与桥接有关。
顺便说一下,执行的最终结果是正确的。
这几乎是正常的 - 你看到类似于普通的Objective-C,并且我认为这个效果在Swift中会变得更糟。 – 2014-11-03 03:17:51
在任何环境中都不是那么不寻常。特别是在循环中,您会看到在开始时跳到底部和/或在结束时跳到顶部。 ARC背后的逻辑增加了更多的陌生感。 – 2014-11-03 03:22:29
@peter您是否找到解决方案?我觉得我在这里疯狂尝试编码,而我的屏幕变得疯狂。 – boidkan 2015-01-16 21:16:00