xcode - 在 Xcode 中,如何进入 lambda 函数?

标签 xcode lambda

调试时,在函数 call(mFunction(1)) 处有一个断点,我按了 step into,但调试器没有进入 lambda功能。

#include <iostream>
int main(int argc, const char * argv[]) {

    std::function<void(int)> mFunction;

    mFunction = [](int a ){
        a = 2;
    };
    mFunction(1); //breakpoint at this line
    return 0;
}

解决方案一:

(lldb)settings set target.process.thread.step-avoid-regexp ""

我已经试过了,它有效,但你再也不想调试了。

最佳答案

据我所知,您的解决方案是正确的。完成后,您可以将正则表达式更改回其原始值,以使其余的调试更加愉快。例如:

(lldb) settings show target.process.thread.step-avoid-regexp
target.process.thread.step-avoid-regexp (regex) = ^std::
(lldb) settings set target.process.thread.step-avoid-regexp ""
... debug ...
(lldb) settings set target.process.thread.step-avoid-regexp "^std::"

来源:https://gist.github.com/hotwatermorning/1c13149705ccf6d3233a043012d0d164

关于xcode - 在 Xcode 中,如何进入 lambda 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38008958/

相关文章:

xcode - 从运行脚本阶段获取当前方案名称

xcode - 快速获取 UITableViewCell 内单元格的索引路径

swift - 无法在 swift 4 中安装 mysql 依赖项

c# - ParameterizedThreadStart 是否保证对象实例不会被垃圾回收?

c# - 从列表中返回元组计数

ios - UITableView 单元格模糊读取项目

ios - Xcode 约束很难吗?

java - .foreach 和 .stream().foreach 有什么区别?

C# 表达式 Lambda

c++ - 将 boost phoenix lambda 与 io_service 一起使用