使用 REPL 进行交互式调试

Posted

技术标签:

【中文标题】使用 REPL 进行交互式调试【英文标题】:Interactively debug with REPL 【发布时间】:2014-06-04 18:06:40 【问题描述】:

我正在尝试。 我在代码中设置了一个断点,例如 println 行上的这段代码

    var testVar : String = "test variable"

    println(testVar)

当代码阻塞时,我在控制台中写“repl”+return repl 控制台出现

写“testVar”(不带引号)我回来了 $R0: String = "test variable" ,这是正确的。 但是,如果我写一个更复杂的语句,比如:

NSUserDefaults.standardUserDefaults().objectForKey("未使用")

它返回:

执行中断。输入 Swift 代码以恢复并继续。

输入 LLDB 命令进行调查(键入 :help 寻求帮助。)

奇怪的是,我今天早上肯定已经使用了这个确切的声明并且它起作用了(Apple Dev 论坛上有一个帖子) 执行中断错误的原因是什么?

谢谢 法比奥

【问题讨论】:

【参考方案1】:

NSUserDefaults 在 Foundation 框架中可用。

因此需要将其导入到 REPL

import Foundation

【讨论】:

对不起,我忘了说...在调用 NSUserDefaults 之前,已经使用“import Foundation”正确导入了框架...

以上是关于使用 REPL 进行交互式调试的主要内容,如果未能解决你的问题,请参考以下文章

Node.js REPL(交互式解析器)

交互式运行环境——REPL

利用mem数组完成MicroPython中UART1的(REPL)的交互

Node.js权威指南 - Node.js中的交互式运行环境——REPL

第二节:Node.js中的交互式运行环境——REPL

如何调试nodejs程序 在谷歌浏览器