【发布时间】:2015-07-14 18:49:22
【问题描述】:
是否可以在 Swift 中为基于 swift 的代码设置符号断点?
假设我有一个类似的课程
class AwesomeSauce {
var ingredients: [String]
init(useIngredients:[String]) {
ingredients = useIngredients
}
}
假设ingredients 数组的排序类似于
var specialSauce = AwesomeSauce(["Sugar","Spice","Everything Nice", "Chemical 'X'"])
specialSauce.ingredients.sort({ $0.length() > $1.length() })
我们还假设(因为我没有注意)我在整个项目的许多不同位置对这个数组进行排序。
我想看看ingredients 何时被排序。
有没有办法可以在Array.sort() 或AwesomeSauce.ingredients.sort() 或类似的东西上设置符号断点?
我似乎什么也做不了,我尝试了各种可能的符号排列。
【问题讨论】:
-
我认为问题在于您要添加“()”。如果您添加参数说明符,lldb 会认真对待您,并且没有不带参数的 Swift.Array.sort。除非你真的需要中断一个函数的重载,否则只给出不带参数的函数标识符要容易得多。事实上,即使您想在重载上中断,也更容易在名称上中断,然后禁用除您想要的重载之外的所有位置,因为完全正确地获取参数通常是一件痛苦的事......