Xcode显示警告:Switch condition evaluates to a constant

<pre>
<code>
`
import UIKit

enum Barcode
{
case UPCA(Int,Int,Int,Int)
case QRCode(String)
}

class ViewController: UIViewController,UITextViewDelegate
{
override func viewDidLoad()
{
var productBarcode = Barcode.UPCA(123, 456, 789, 0)
productBarcode = Barcode.QRCode("xyz")
//Xcode⚠️Switch condition evaluates to a constant
//警告:Switch 条件被判断为一个常量.
//可能是编译器认为变量在函数内部是不变的吧
switch productBarcode
{
case let .UPCA(a, b, c, d):
print(a,b,c,d)
case let .QRCode(str):
print(str)
}
}
}
`
</code>
</pre>

解决方法:
将变量从函数内部提取出来,如下

<pre>
<code>
`
import UIKit

enum Barcode
{
case UPCA(Int,Int,Int,Int)
case QRCode(String)
}

class ViewController: UIViewController,UITextViewDelegate
{
var productBarcode = Barcode.UPCA(123, 456, 789, 0)
override func viewDidLoad()
{
productBarcode = Barcode.QRCode("xyz")

    switch productBarcode
    {
    case let .UPCA(a, b, c, d):
        print(a,b,c,d)
    case let .QRCode(str):
        print(str)
    }
}

}
`
</code>
</pre>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,767评论 18 399
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,270评论 0 4
  • 【青莲堂日话】160405 每日一话,是为日话 今天有好多话题可以聊聊。 今天是爷爷83岁寿辰,本来有机会回去为他...
    effelee阅读 101评论 0 0
  • 女排时隔十二年再次现在奥运会之巅,可佩可敬!郎平真是排球界的波波维奇啊~作为一个女教练,真是厉害!
    简书的蓝叶阅读 339评论 0 0