iphone - 如何在 Objective-C 的 switch 语句中使用 goto?

标签 iphone objective-c switch-statement goto

在我的代码中,我需要能够在同一 switch 语句中跳转(转到)不同的情况。有办法做到这一点吗?

我的代码是这样的:(有很多代码我都省略了)

switch (viewNumber) {
case 500:
        // [...]
break;

case 501:
        // [...]
break;
.
.
.
.
.

case 510:
        // [...]
break;

default:
break;

感谢您的宝贵时间! -杰夫

最佳答案

按照您的要求无条件地跳跃通常非常糟糕的做法

我认为一个更具可读性/可维护性的解决方案是将共享代码放在一个方法中,并让多个案例调用该方法。

如果您确实想要,您可以使用goto 来执行如下操作:

switch(viewNumber) {
    case 500:
        // [...]
        goto jumpLabel;
    case 501:
        // [...]
        break;
    case 502:
        // [...]
        jumpLabel:
        // Code that 500 also will execute
        break;
    default:break;
}

注意:我只提供上面的代码示例来回答您的问题。我现在觉得很脏,我可能不得不买一些 Bad Code Offsets .

关于iphone - 如何在 Objective-C 的 switch 语句中使用 goto?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1764354/

相关文章:

iphone - 为什么 Xcode 将我的所有代码编译两次,导致任何全局变量出现链接器错误?

iphone - 获取 UIImagePickerController 选择的视频尺寸

ios - NSOperation 取消和 NSOperationQueue

jquery - 使用 jQuery 移动多个元素相对于另一个元素的位置

Iphone 能够在多任务环境中自动暂停和恢复文件下载

iphone - 保存证书签名请求以供多次使用是否安全?

C++ fatal error C1061与大开关,元编程

regex - 在 bash 脚本中查找文件夹名称的一部分

php - 这是从数据库获取数据的有效方法吗?

由于滚动量,iOS 隐藏导航栏