LeetCode专题 分而治之

objc.io issue 19 LLDB Debugging 学习有感

banbo 发布于 2015年02月24日
无人欣赏。

前言

今天在看 objc.io issue 19的文章 晚上看到: Dancing in the Debugger — A Waltz with LLDB 由于搞了个简单的 Swift 应用来把玩把玩,实践实践. <br/>目前遇到两个问题

环境说明: Xcode 6.3 beta1, Swift 应用. 主要代码如下:

    let cCount = 99
    var vCount = 98
    let objects = "red ballons"
    NSLog("%lu %lu %@.",cCount,vCount,objects )

遇到的问题

  • expression 命令无法修改程序的值 原来是基于 Objective-C 的,因此变量默认都是可变的,所以我的 Swift 的 Demo 加了可变的变量和不可变的变量. 在执行 expr vCount=88 之后输出的值并没有改变

    (lldb) expr vCount=80
    2015-02-24 22:13:18.386 LLDBDemo[12809:690024] 99 98 red ballons.
    (lldb) 
    

  • 虽然看帮助时,expr 命令支持ObjC++和 Swift 语法,但是对于 ObjC 的字面量语法看起来不支持了:

    (lldb) po ["banbo",1988]
    [banbo, 1988]
    (lldb) po @[@"banbo",@1971]
    error: <EXPR> :1:2: error: expected an attribute name
    @[@"banbo",@1971]
    ^
    <EXPR> :1:2: error: expected declaration
    @[@"banbo",@1971]
    ^
    (lldb) 
    

暂无回复
登录 或者 注册