铸造与快速转换相同吗?

时间:2016-11-17 19:07:21

标签: swift casting type-conversion

当使用"绊倒铸造时!或者作为?",我还注意到也可以使用括号内的所需类型转换类型,例如:

let x : Int = 42
var myString = String(x)

这让我很好奇地询问转换和铸造是否相同?但是当我尝试使用引用类型转换另一个示例时,我不认为编译器允许这样做,或者至少它给了我一个错误,例如:

let sutCast = storyboard.instantiateViewController(withIdentifier: "ItemListViewController") as! ItemListViewController
let sutConvert = ItemListViewController(storyboard.instantiateViewController(withIdentifier: "ItemListViewController"))

在Swift中是否可以安全地说,对于引用类型不允许进行转换,并且转换与转换不同,因为它取决于对象是引用类型还是值类型?

1 个答案:

答案 0 :(得分:1)

来自sample showing how that project works

  

类型转换是一种检查实例类型的方法,或者将该实例视为其自己的类层次结构中其他位置的不同超类或子类。

这是一种将一种类型转换为另一种类型的方法,但它也可以用于更多类型,例如检查类型等。

有关详细信息,请参阅文档。

相关问题