首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

我的调试语句是否正确?这个类是否被正确使用?我目前没有收到错误,但也没有得到任何输出

根据你提供的问答内容,我将尝试给出一个完善且全面的答案。

首先,你提到了两个问题:

  1. 我的调试语句是否正确?
  2. 这个类是否被正确使用?

针对第一个问题,判断调试语句是否正确通常需要考虑以下几个方面:

  • 语法错误:检查语句中是否存在拼写错误、缺少分号等常见的语法错误。
  • 逻辑错误:检查语句是否按照预期的逻辑执行,是否符合你的预期结果。
  • 调试工具:使用合适的调试工具,例如浏览器的开发者工具、IDE的调试功能等,来检查语句的执行情况,查看变量的值、函数的调用栈等信息。

针对第二个问题,判断类是否被正确使用也需要考虑以下几个方面:

  • 类的实例化:检查是否正确创建了类的实例,并传入了正确的参数。
  • 方法调用:检查是否正确调用了类的方法,并传入了正确的参数。
  • 类的属性:检查是否正确访问了类的属性,并对其进行了适当的操作。

对于以上两个问题,如果你目前没有收到错误,但也没有得到任何输出,可能有以下几种情况:

  1. 调试语句没有被执行到:检查代码中是否存在条件判断、循环等逻辑,导致调试语句没有被执行到。
  2. 输出被屏蔽或重定向:检查代码中是否对输出进行了屏蔽或重定向操作,导致你无法看到输出结果。
  3. 代码逻辑错误:检查代码中的逻辑是否正确,是否可能导致没有输出结果。

综上所述,为了更好地判断调试语句是否正确以及类是否被正确使用,建议你进行以下操作:

  1. 仔细检查调试语句和类的使用方式,确保语法正确、逻辑正确。
  2. 使用合适的调试工具,查看语句的执行情况,以及类的属性和方法的调用情况。
  3. 检查代码中是否存在可能导致没有输出结果的逻辑问题。
  4. 如果问题仍然存在,可以尝试添加更多的调试语句,输出更多的中间结果,以便更好地定位问题所在。

请注意,以上是一般性的建议,具体情况可能需要根据你的代码和调试环境进行具体分析。如果你能提供更多的上下文信息,我可以给出更具体的建议和答案。

关于云计算领域的相关名词和腾讯云产品,由于你要求不提及其他流行的云计算品牌商,我将给出一些与云计算相关的名词解释和腾讯云产品介绍:

  1. 云计算(Cloud Computing):云计算是一种通过互联网提供计算资源和服务的模式,包括计算、存储、网络等。它可以提供按需使用、弹性扩展和按使用量付费等特点。
  2. 前端开发(Front-end Development):前端开发是指开发用户界面的技术和工作,包括HTML、CSS、JavaScript等。前端开发通常关注用户体验和界面交互。
  3. 后端开发(Back-end Development):后端开发是指开发服务器端应用程序的技术和工作,包括处理业务逻辑、数据库操作、API设计等。后端开发通常关注数据处理和业务逻辑。
  4. 软件测试(Software Testing):软件测试是指对软件进行验证和验证的过程,以确保其符合预期的质量要求。它包括功能测试、性能测试、安全测试等。
  5. 数据库(Database):数据库是用于存储和管理数据的系统,可以提供数据的持久化存储和高效的数据访问。常见的数据库类型包括关系型数据库(如MySQL)和NoSQL数据库(如MongoDB)。
  6. 服务器运维(Server Operations):服务器运维是指管理和维护服务器的工作,包括安装、配置、监控、故障排除等。它确保服务器的稳定运行和高可用性。
  7. 云原生(Cloud Native):云原生是一种构建和运行应用程序的方法论,强调容器化、微服务架构、自动化管理等,以提高应用程序的可伸缩性和可靠性。
  8. 网络通信(Network Communication):网络通信是指在计算机网络中进行数据传输和交换的过程,包括TCP/IP协议、HTTP协议等。它是云计算和互联网的基础。
  9. 网络安全(Network Security):网络安全是指保护计算机网络和系统免受未经授权的访问、攻击和损害的措施和技术。它包括防火墙、加密、身份验证等。
  10. 音视频(Audio and Video):音视频是指音频和视频的处理和传输技术,包括音频编解码、视频编解码、流媒体传输等。它在云计算中广泛应用于音视频通话、直播等场景。
  11. 多媒体处理(Multimedia Processing):多媒体处理是指对多媒体数据(如图像、音频、视频)进行处理和编辑的技术,包括图像处理、音频处理、视频编辑等。
  12. 人工智能(Artificial Intelligence):人工智能是指使计算机具有类似人类智能的能力和行为的技术和方法。它包括机器学习、深度学习、自然语言处理等。
  13. 物联网(Internet of Things):物联网是指通过互联网连接和交互的物理设备和对象的网络。它可以实现设备之间的通信和数据交换,应用于智能家居、智能城市等领域。
  14. 移动开发(Mobile Development):移动开发是指开发移动应用程序的技术和工作,包括Android开发、iOS开发等。它关注移动设备上的应用程序开发和优化。
  15. 存储(Storage):存储是指在云计算中用于持久化数据的服务和技术,包括对象存储、文件存储、块存储等。它提供可扩展的、高可靠性的数据存储。
  16. 区块链(Blockchain):区块链是一种去中心化的分布式账本技术,用于记录交易和数据,具有不可篡改、去中心化等特点。它应用于数字货币、供应链管理等领域。
  17. 元宇宙(Metaverse):元宇宙是指一个虚拟的、与现实世界相互连接的数字世界,包括虚拟现实、增强现实、3D建模等技术。它提供沉浸式的用户体验和多样化的应用场景。

腾讯云相关产品和产品介绍链接地址可以在腾讯云官方网站上查找,根据具体的需求和场景选择适合的产品。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

和各种诡异 Bug 打交道 13 年,总结了 18 个经验

最近重新浏览了这所有的 194 个条目(历时 13 年),看看我从这些 bug 中学到了学到了那些重要经验教训。分为编码、测试和调试三大。...当我们处理这个问题时,我们通常假设它处在空闲列表状态时标记为断开(但是当时它为什么没有这个列表上撤下?) 没考虑到事情有时发生过早是由于我们没有想到。...另一个例子:当遇到一个错误元素时,直接返回而不是给出错误解析代码。调用在故障状态下持续了一段时间,使得调试难度加大。一旦故障检测出,最好要及时返回这个错误。...所以这些天,认真对待他们反馈。当然,仍然反复测试所有的一切正确地设置了。...使用语言包括 C++、Ruby、Java 和 Python,若干 bug 在使用 C++ 日子里就已经不再出现了。像堆栈溢出,内存损坏,字符串问题以及某些形式内存泄漏。

70630

和各种诡异 Bug 打交道 13 年,总结了 18 条经验

分为编码、测试和调试三大。 ? 编码 这些都是过去给我带来棘手 bug 问题: 1. 事件顺序 当处理事件时,问以下问题富有成效:事件是否可以以不同顺序到达?如果没收到这些事件怎么办?...当我们处理这个问题时,我们通常假设它处在空闲列表状态时标记为断开(但是当时它为什么没有这个列表上撤下?) 没考虑到事情有时发生过早是由于我们没有想到。 3....另一个例子:当遇到一个错误元素时,直接返回而不是给出错误解析代码。调用在故障状态下持续了一段时间,使得调试难度加大。一旦故障检测出,最好要及时返回这个错误。 4....另一个例子:在发送任何数据(零字节)之前,测试 TCP 连接断开。没有使用这些组合来测试是 bug 悄然出现头号原因,在测试时是原本可以发现这些 bug 。 9....所以这些天,认真对待他们反馈。当然,仍然反复测试所有的一切正确地设置了。

90580
  • 教程|Python Web页面抓取:循序渐进

    URL2.png 如果收到错误消息表明文件丢失,再次检查驱动程序“ webdriver.*”中提供路径是否与webdriver可执行文件位置匹配。...没有缩进循环将输出“IndentationError”,并用“arrow”指出有问题语句。...输出数据 Python页面抓取需要对代码进行不断检查 输出1.jpg 即使在运行程序时没有出现语法或运行错误,也仍然可能存在语义错误。...应该检查实际上是否有分配给正确对象数据,并正确地移动到数组。 检查在前面步骤中采集数据是否正确最简单方法之一是“打印”。...所以,直接打印结果是完全可行输出3.png 到目前为止,编码应该如下所示: 输出4.png 现在运行程序应不会显示任何错误,并且会在调试器窗口中显示获取数据。

    9.2K50

    独家 | 你神经网络不起作用37个理由(附链接)

    做错了什么?”——问我电脑,但它没有回答。 你从哪里开始检查是否模型输出了垃圾(例如,预测输出了平均值,或者它准确性真的很差)? 由于许多原因,神经网络可能不会进行训练。...在许多调试过程中,经常发现自己在做同样检查。经验和最好想法整理在这个便利列表中,希望它们对你也有用。 目录 1. 如何使用本指南? 2. 数据集问题 3....确保输入连接到输出 检查一些输入样本是否正确标签。同时确保对输入样例进行打乱方式与输出标签相同。 5. 输入和输出之间关系是否过于随机?...试着解决这个问题简单版本 这将有助于找到问题所在。例如,如果目标输出是一个对象和坐标,则尝试将预测限制为对象。 17....例如,如果我们有10个,随机意味着我们将在10%时间内得到正确,而Softmax损失是正确概率对数相反数,所以:-ln(0.1) = 2.302。

    81110

    Java开源博客My-Blog之mysql容器重复初始化严重bug修复过程

    取而代之是schema.sql中几条初始化数据,当时也认真确认是否存在错误操作导致了数据清空,结果就是一切流程都正常,过程中并没有误操,这个问题也只有在重启时会出现,这是流程设计问题而且是一个十分致命问题...过程记录 一开始并没有意识到严重性,因此也并没有投入特别多精力在这个问题上,而是把重点更多放在其他bug修复上,但是随着自己博客数据增多,及使用此项目的朋友渐渐增多,有一天忽然有种重压在心头感觉...一开始是根本没思路,通过一点点动手实践,整个思路也渐渐清晰,通过shell脚本执行mysql命令,并根据得到输出判断是否已经存在项目数据库,如果已经存在,就不再进行初始化,而是不进行任何操作即可,如果不存在...如图,在执行'mysql > use tale;'sql命令时,每次都有此错误返回,虽然是预想中返回,如果针对此错误返回值即可正确判断是否已存在tale数据库,但是shell在执行到此语句时,收到错误信息就直接退出进程了...如图所示,最终得到了想要结果,重启时可以正确判断容器中mysql服务器中是否已经存在tale数据库,如果已经存在则不再重新初始化数据,修复了这个较为严重bug。

    89970

    最佳PHP代码审查关键原则与实践技巧

    检查是否有不合逻辑步骤、错误计算,或者流程可能会意外停止地方。 检查输入:代码是否正确处理了它可能接收到所有类型数据?这包括用户输入、数据库数据或来自外部系统信息。...检查输出:验证代码产生结果是否正确,并且格式符合预期。输出数据是否符合要求? 彻底测试是确保功能关键。...在这个步骤中,发现能够将代码发布到审查应用程序或暂存服务器,并确认在代码审查中发现及其实际工作方式是很有帮助。对于棘手部分,也倾向于搜索添加单元测试。...是否有不正确行为或缺少任何东西?接下来,仔细地逐步执行代码逻辑。执行是否遵循从接收到输入到最终输出合理路径?寻找任何无意义分支(比如总是为假if语句)、无限循环或潜在崩溃。...寻找特定于框架输入清理函数或方法。 预处理语句:数据库查询是否始终使用预处理语句构建?检查框架方法,这些方法有助于防止SQL注入。 错误处理:代码是否避免向用户暴露原始错误消息或堆栈跟踪?

    13810

    12 Python 基础: 如何优化代码质量,错误调试和测试你必须要懂.md

    此外,我们也需要跟踪程序执行,查看变量是否正确这个过程称为调试。Pythonpdb可以让我们以单步方式执行代码。...用错误码来表示是否出错十分不便,因为函数本身应该返回正常结果和错误码混在一起,造成调用者必须用大量代码来判断是否出错: [image.png] 处理多种错误 错误应该有很多种类,如果发生了不同类型错误...调用堆栈 如果错误没有被捕获,它就会一直往上抛,最后Python解释器捕获,打印一个错误信息,然后程序退出。...二分法: 简单来说就是,把长长程序分成上下两部分来调试(从中间开始)。在中间进行输出,如果不能运行则向上继续使用二分法,能则向下使用二分法。以此类推,一直缩小范围,最大效率调试代码。...小结 写程序最痛苦事情莫过于调试,程序往往会以你意想不到流程来运行,你期待执行语句其实根本没有执行,这时候,就需要调试了。

    1.3K30

    独家 | 你神经网络不起作用37个理由(附链接)

    一切看起来都很好:梯度是逐渐变化,损失在减少。但接下来预测:都是零,所有的图像背景都没有检测到。“做错了什么?”——问我电脑,但它没有回答。...你从哪里开始检查是否模型输出了垃圾(例如,预测输出了平均值,或者它准确性真的很差)? 由于许多原因,神经网络可能不会进行训练。在许多调试过程中,经常发现自己在做同样检查。...确保输入连接到输出 检查一些输入样本是否正确标签。同时确保对输入样例进行打乱方式与输出标签相同。 5. 输入和输出之间关系是否过于随机?...试着解决这个问题简单版本 这将有助于找到问题所在。例如,如果目标输出是一个对象和坐标,则尝试将预测限制为对象。 17....例如,如果我们有10个,随机意味着我们将在10%时间内得到正确,而Softmax损失是正确概率对数相反数,所以:-ln(0.1) = 2.302。

    77820

    一文看懂 .NET 异常处理机制、原则以及最佳实践

    然而大多数情况下我们都考虑使用 .NET 中自带异常,因此可以充分利用 Exception 已有属性在特殊情况下报告更详细利于调试异常信息。...当然如果任务已全部完成,仅仅在对外通知时候出现了异常,那么这个时候不需要恢复状态,因为实际上已经完成了任务。 你可能会有些担心如果没有任何手段可以恢复错误怎么办?那这个时候就不要处理异常!...一段异常处理代码中可能没有 catch 块而有 finally 块,这个时候重点是清理资源,通常也不知道如何正确处理这个错误。...而一些认为是异常情况下收到此事件则是正常。...任何情况下都不应该抛出这些异常: 过于抽象,以至于无法表明其含义 Exception 这可是顶级基,这都抛出来了,使用者再也无法正确地处理此异常了 SystemException 这是各种异常

    78441

    神经网络不起作用37个理由

    一切看起来都很好:梯度是逐渐变化,损失在减少。但接下来预测:都是零,所有的图像背景都没有检测到。“做错了什么?”——问我电脑,但它没有回答。...你从哪里开始检查是否模型输出了垃圾(例如,预测输出了平均值,或者它准确性真的很差)? 由于许多原因,神经网络可能不会进行训练。在许多调试过程中,经常发现自己在做同样检查。...试着解决这个问题简单版本 这将有助于找到问题所在。例如,如果目标输出是一个对象和坐标,则尝试将预测限制为对象。 17....例如,如果我们有10个,随机意味着我们将在10%时间内得到正确,而Softmax损失是正确概率对数相反数,所以:-ln(0.1) = 2.302。...检查损失函数 如果你实现了自己损失函数,请检查它是否错误并添加单元测试。通常情况下,损失值会略微不正确,并小程度降低网络性能。 19.

    77300

    IMSDK离线推送

    image.png image.png 6、调试工具 腾讯云通信控制台提供了离线推送调试工具,在开发过程中遇到了离线消息问题,可以使用这个调试工具。...六、FAQ 1、安卓app放后台,为什么没有收到离线消息,弹出通知栏 答:安卓app进程退到后台,并不会马上系统kill,im还是在线状态,不会有离线消息投递下来。...2、ios用苹果官网推送可以收到离线消息,但是app发离线消息收不到,使用调试工具发现未知错误 答:说明获取token没问题,有可能上报token错误、或者证书错误。...ui刷新推荐使用tuikit 7、集成华为离线推送,为什么注册token时总是失败。 答、请参考华为官方错误码文档,最常见是6003:“证书指纹校验:证书指纹错误”。...这个release包签名文件,必须是开通华为离线推送服务时填入证书指纹。 1、检查是否在华为开发者联盟上配置了正确证书指纹。

    6.1K151

    Python 测试基础

    你怎么知道自己编写程序管用呢?能指望你在任何时候编写代码都没有缺陷吗?恕我直言,想这不太可能。...诚然,在大多数情况下使用 Python 都很容易编写出正确代码,但代码出现 bug 并非没有可能。 调试是程序员躲不开宿命,是编程工作有机组成部分。...这样以后就很容易核实需求是否确实得到了满足。不过很多程序员不喜欢撰写报告,更愿意让计算机替他们完成尽可能多工作。好消息是,你可使用 Python 来描述需求,并让解释器检查是否满足了这些需求!...如果测试有错误,导致在任何情况下都能成功(这样情况遇到过很多次),那么它实际上什么都没有测试。不断重复这个过程:确定测试失败后,再试图让它成功。 编写让测试刚好能够通过代码。...注意 如果这里编写是真实函数,将(或者说应该)根据前面制定规则先编写文档字符串,再使用 doctest 运行脚本看看是否会失败,然后添加刚好让测试得以通过代码(如使用测试语句来处理文档字符串中具体输入

    1.5K10

    Python学习笔记(八)·错误调试和测试

    此外,我们也需要跟踪程序执行,查看变量是否正确这个过程称为调试。Pythonpdb可以让我们以单步方式执行代码。 最后,编写测试也很重要。...8.1.2 调用栈 如果错误没有被捕获,它就会一直往上抛,最后Python解释器捕获,打印一个错误信息,然后程序退出。...pdb单步调试效率要高很多,但也高不到哪去。...小结: 写程序最痛苦事情莫过于调试,程序往往会以你意想不到流程来运行,你期待执行语句其实根本没有执行,这时候,就需要调试了。...并且,Python内置“文档测试”(doctest)模块可以直接提取注释中代码并执行测试。 doctest严格按照Python交互式命令行输入和输出来判断测试结果是否正确

    1.3K30

    第一个Linux内核贡献,剥夺了!

    内核确实接收到所有信号,但仅在错误情况下响应其中一些信号。 然后,它与我“ps”输出相匹配,因为看到某些线程未处于 pthread_stop 状态,然后 gdbserver 挂起。...古老问题往往源于简单错误 Ariel 花了 3-4 天阅读 PowerPC 架构相关提交描述以及task_struct版本变化,却发现这个问题并没有在后续内核版本得到解决。...这导致重要字段 task_struct覆盖,例如__state存储进程状态字段,内核还使用它来跟踪调试器停止了哪些进程等等。...又或者即便提交者代码很糟糕,但也不应该很不屑回复一句:想用不同方式修复它。毕竟,如果没有没有原始代码,我们连重构修复机会都没有。...一旦他对工作正确性感到满意,他就合并了补丁,一切都很好。从未要求过,也没有得到任何荣誉。” 希望这样情况能够得到改善,否则会让一些开源贡献者们失去对“开源”热爱。

    31110

    Java常见几大代码

    在过去曾经注意过一个方法,并且相信它是调用,花了很多时间去找这个错误这个错误表现就是你方法不会被调用,你以为你方法已经跳过了。一种可行解决方法就是增加一条打印输出语句。...或者是使用跟踪调试程序(例如VJ++或者是Borland JBuilder)来一行一行调试。如果你方法还不能调用,那很可能就是你方法名键入错误了。...这个函数结束以后,将会返回到控制调用函数去,这时候那个“真正”值没有收到影响,没有任何改变存储。 如果你想修改一个简单数据类型,可以将这个数据类型定位一个返回值或者将它封装到一个对象中。...但是如果真的发生了错误,你不会得到一个错误信息输出,它使得不太可能发现错误原因。甚至是最简单一场处理都是很有用处。...他是很简单,但是有时我们看着一个没有大写变量或者方法却并不能发现这个错误自己也常常感到困惑,因为认为这些方法和变量都是存在,但是却发现不了他们没有大写。

    41430

    写了个数据查询为空 Bug,你会怎么办?

    遇到此类问题,其实是有经典解决套路,下面鱼皮给大家分享如何高效解决这个问题。只需 4 个步骤:解决步骤1、定位问题边界首先要定位数据查询为空错误边界。说简单一点,就是要确认是前端还是后端锅。...可以多用 debugger 或 console.log 等方式输出信息,便于调试。...星球同学可以免费阅读前端嘉宾神光《前端调试通关秘籍》:https://t.zsxq.com/13Rh4xxNK如果发现后端未返回数据,那么前端需要先确认下自己传递参数是否正确。...即使前端说自己请求是正确但也必须要优先验证,而不是一上来就去分析数据库和后端程序逻辑问题。验证请求参数对象没问题后,接着逐行 Debug,直到要执行数据库查询。...比较典型错误场景是查询出结果设置到了错误字段中、或者由于权限问题过滤和脱敏掉了。最后以后再遇到数据查询为空情况,按照以上步骤排查问题即可。

    36810

    【深度学习】深度学习中单元测试

    提高了对单元本身信心,因为如果它通过了单元测试,我们可以确定逻辑没有明显错误,并且单元按预期运行。 调试变得更容易,因为你可以知道哪个单元失败了,以及哪些特定测试用例失败了。...TestCase子类测试方法应该在名称中有test前缀,并执行特定测试代码。 为了执行测试,TestCase基有几个assert方法,允许你对照测试单元输出检查测试用例输出。...任何其他异常都将被视为错误。 有两种类型setup方法可用于为测试设置。 setUp -这将在每个测试方法之前调用。 setUpClass-整个只运行一次。...如果所有的测试方法都通过了,那么最后会收到一条OK消息。 但是,如果任何一个测试方法失败,你将得到一条失败消息,其中指定了失败测试。你会知道哪个断言失败了。...如前所述,这对调试和查找破坏代码原因非常有帮助。在本例中,更改了正在读取图像,但没有更改正在比较张量,这导致了错误

    2.1K20

    C语言assert函数(isspace函数)

    在代码执行之后或者在函数出口处,使用断言来检查参数是否正确地执行,这称为后置条件断言。 在代码执行前后或者在函数入出口处,使用断言来检查参数是否发生了变化,这称为前后不变断言。...由其他程序所提供数据是否正确。 数据库中数据,包括数组、文件、结构、记录是否正确。 操作员输入,包括输入性质、顺序是否正确。 栈深度是否正确。 数组界限是否正确。...表达式中是否出现零分母情况。 正在运行程序版本是否是所期望(包括最后系统重新组合日期)。 通过其他程序或外部设备输出数据是否正确。...用断言保证没有定义特性或功能不被使用 在日常软件设计中,如果原先规定一部分功能尚未实现,则应该使用断言来保证这些没有定义特性或功能不被使用。...4*/ assert(sizeof(long)==4); /*byte宽度是否为8*/ assert(CHAR_BIT==8); 之所以可以这样使用断言,那是因为软件最终发行 Release 版本与编译器已没有任何直接关系

    91330

    keil调试程序断点设置技巧

    这几天整同事留下来项目的BOM,很简单错误,弄头大,看下文章分下神, 值得尝试一下这个调试方法。 程序运行过程中,有些数据莫名修改了,在哪里修改?又是怎么修改?...这个代码只想知道是否运行过,或者运行了多少次,但是不想让程序停下来,或者仅打印调试信息,怎么办?当这个变量设置成某个数据后,想让程序自动暂停下来进行分析,怎么办?...;比如两个设备通信,一方采用常规断点方式调试,肯定会打断正常通信过程,而这可不是我们想要,我们只想知道在收到或发送数据后得到环境快照,而并不想让程序停下来。...原因就在于打印输出时间太久,打乱了程序运行节奏(而这也是推荐使用 ITM 调试一个原因,因为它输出效率比串口要高得多),或者打印函数本身有问题,也会导致程序运行出现问题。...d) 表达式错误 检查你表达式是否正确,注意如果你使用了运算符,那么对于浮点变量支持好像并不正常,不管你怎么设置,都说表达式错误

    3.1K11

    笨办法学 Python · 续 练习 30:有限状态机

    这很好很强大,因为这意味着即使没有发生任何事情,你也可以将 FSM 转换到新状态。然而,实际上,“没有”往往是隐含事件“再来一次”或“醒来”。...在其他情况下,这个状态意思是,“不确定,也许下一个事件会告诉是什么状态。” FSM 力量是能够明确地说明每个事件,事件只是正在接收数据。...这使得它们非常容易进行调试,测试和正确实现,因为你确切地知道每个状态可能性,以及在每个状态中,对于每个事件可能发生情况。...最后,你可以使用一个设计,其中有一个FSMRunner,它只知道如何运行这样设计模块。这比一个知道如何运行自身实例单一有一些优点,但也有一些问题。例如,FSMRunner如何跟踪当前状态?...使用 FSM 处理事件最大优点之一是,可以存储和记录 FSM 收到所有事件和状态。这可以让你调试,为什么它达到你不需要状态。 深入学习 你应该仔细研究 FSM 背后数学。

    48920
    领券