Vb6 Case a to b in Select Case(Switch) 枚举

标签 vb6

我在vb6中看到过这种代码。

Private Enum enmMain
    STEP_INIT = 1
    STEP_RUN = 2
    STEP_SLEEP = 3
    STEP_SUSPEND = 4
    STEP_ERROR = 5
End Enum

Private mStep As enmMain

Select Case mStep
  Case Is <= enmMain.STEP_RUN
    'Do something
  Case enmMain.STEP_RUN To enmMain.STEP_ERROR 
    'Do something

我不明白这个:

Case enmMain.STEP_RUN To enmMain.STEP_ERROR

如果满足这个条件就进入那种情况: 最新值为 STEP_RUN 当前值为 STEP_ERROR

它是如何工作的? 我在手机上发帖,写不干净。

最佳答案

表示mStep的所有值都满足case语句介于 2 和 5 之间(含)。

因此代码中存在不精确之处。因为值 STEP_RUN两次出现在包容性测试中(参见 <= 运算符)。哪种行为适用于 STEP_RUN ,第一个还是第二个?您需要通过了解程序的逻辑来弄明白。

关于Vb6 Case a to b in Select Case(Switch) 枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57901859/

相关文章:

c# - 使用 Nim 生成用于 C#/VB6 的 DLL

android - 如何通过蓝牙从android接收VB 6中的数据字符串

vb6 - 有没有办法在 VB6/Visual Studio 6.0 IDE 中显示行号?

vb6 - 使VB6揭示哪些组件未安装设计时许可证

vb6 - 达到限制无法为此表单 vb6 创建更多控件

解析VB6语法

vb6 - 如何在VB6集合中编辑项目

c++ - 在全屏模式游戏中运行exe文件

vb6 - 视觉基本 6 : Read MSG files and extract content

mysql - vb 6 执行存储过程出错