let conn:(Int, String) = (code: 404, msg: "Not Found") conn.code
这样会报错,求解决方法
忘了说,第二种方式就是Apple推荐的方式,能推断出类型就不要写类型申明,建议以后这样写
let conn:(code: Int, msg: String) = ( 404, "Not Found") conn.code
这样写~
let conn = (code: 404, msg: "Not Found") conn.code
或者这样写
let conn:(Int, String) = (code: 404, msg: "Not Found") conn.0//就是code conn.1//就是msg
再或者这样
你的写法报错的原因是你将conn声明为一个(Int, String)类型的tuples,并没有给tuples里的值命名,然后将一个(code: Int, msg: String)类型的元组里的值赋值给conn,所有只能用conn.0和conn.1这样的方式来访问conn中的值。
在Apple官方的swift书里建议如果能明确的推断出变量(常量)的类型,就将这个事交给编译器去做,不用做显示的申明类型。因为在Xcode中想查看变量(常量)的类型非常简单,按住option键然后戳那个变量就会显示提示,所以不写明类型也非常容易的能知道类型,这就是Apple的编码习惯