在验证类型转换的Any的知识点时,遇到了下列的bug
刚刚以为是Xcode出了什么问题,还去百度查问题,解决方案也很少,提示的是源编辑器受限。后来检查才发现是元组类型少了括号,而且是还没编辑的时候,全灰掉,连注释都灰了无效了。
一个元组少了括号,为什么不能在编译的时候报错或者在写的时候给个警告提示,而是给个从没遇到的括号~具体原因我并没太理解~
//Any和AnyObject的类型转换
//AnyObject:任何class类型的实例
//Any:可表示任何类型,包括方法实例,闭包等
//这个虽然好用,但是代码中还是有明确类型最好
var testAny = [Any]()
testAny.append(2.18)
testAny.append(2.0,2.18)------->错误行
testAny.append((2.0,2.18))
testAny.append("Hello")
testAny.append(Movie())
testAny.append({(name:String)->String in
return "Hello \(name)"})
//各种类型都OK,包括方法类型和非class类型,闭包也是可以的等等,上面的Movie是实例不是class
如果有知道的大牛路过求告知。谨以此记录,以后知道了回来备注~