调试无痛入手

在调试过程中,Step InStep OverStep Out 是控制代码执行流程的常用操作,帮助开发者逐行或逐块检查代码行为。以下是它们的详细介绍及使用方法:

1. Step In

  • 功能:进入当前行的函数或方法内部,逐行执行其代码。
  • 使用场景:当你需要深入查看某个函数的具体实现时使用。
  • 操作
    1. 调试器停在某一行代码。
    2. 如果该行包含函数调用,点击 Step In 会进入该函数的第一行。
    3. 如果没有函数调用,调试器会直接跳到下一行。

2. Step Over

  • 功能:执行当前行代码,但不进入调用的函数内部,直接跳到下一行。
  • 使用场景:当你不需要查看某个函数的具体实现,只想快速执行完当前行时使用。
  • 操作
    1. 调试器停在某一行代码。
    2. 点击 Step Over,调试器会执行该行代码并跳到下一行,忽略函数内部的执行细节。

3. Step Out

  • 功能:从当前函数中跳出,返回到调用该函数的地方,并继续执行后续代码。
  • 使用场景:当你已经查看了函数的部分代码,想快速返回到调用处时使用。
  • 操作
    1. 调试器停在函数内部的某一行。
    2. 点击 Step Out,调试器会执行完函数的剩余部分,并返回到调用该函数的地方。

示例

假设有以下代码:

python 复制代码
def function_a():
    print("Inside function_a")
    function_b()

def function_b():
    print("Inside function_b")

def main():
    print("Starting main")
    function_a()
    print("Ending main")

main()
  • Step In

    • 停在 function_a() 调用处时,点击 Step In 会进入 function_a 的第一行。
    • function_a 中停在 function_b() 调用处时,点击 Step In 会进入 function_b 的第一行。
  • Step Over

    • 停在 function_a() 调用处时,点击 Step Over 会直接执行 function_a 并跳到 print("Ending main"),不会进入 function_a 内部。
  • Step Out

    • function_b 内部时,点击 Step Out 会执行完 function_b 并返回到 function_a 中调用 function_b 的下一行。

总结

  • Step In:进入函数内部,逐行查看。
  • Step Over:跳过函数内部,直接执行当前行。
  • Step Out:跳出当前函数,返回到调用处。
相关推荐
kyriewen9 分钟前
我排查了一个React内存泄漏——罪魁祸首是这3个被忽略的清理函数
前端·javascript·面试
雨田言炎11 分钟前
四、关于Qt项目需要知道的
开发语言·笔记·qt
IT_陈寒15 分钟前
我又被JavaScript的隐式类型转换坑了
前端·人工智能·后端
其美杰布-富贵-李42 分钟前
03 ref、reactive 与 computed 响应式数据
前端·javascript·vue.js
OpenTiny社区44 分钟前
GenUI SDK v1.3.0 发布|多框架兼容,一键换物料,渲染器 & 演练场全面增强!
前端·ai编程
用户938515635071 小时前
useRef + Web Worker 实战:React 如何优雅地拥抱多线程
前端·javascript·react.js
程序喵大人1 小时前
【C++进阶】STL算法与函数对象 - 02 sort为什么需要随机访问迭代器
开发语言·c++·算法
他们叫我秃子1 小时前
前端开发转 Go 全栈(五):终于遇到熟人了,Go 的闭包和高阶函数原来这么像 JavaScript
前端·后端·go
SomeB1oody1 小时前
【RustyML入门】2.6. 线性判别分析
开发语言·后端·机器学习·rust·教程
用户61595868000221 小时前
从 0 写一个迷你 wujie:用原生 Web API 实现微前端
前端