为什么在 Swift 中不能将 Int32 变量分配给 Int64 变量,反之亦然?

Why an Int32 variable can't be assigned to an Int64 variable or vice versa in Swift?

我无法将 Int32 var/let 分配给 Int64 var/let 或者在 [=19 中反之亦然=].当我尝试这样做时出现编译时错误。这背后的原因是什么?

如果声明一个变量为Int32,分配给该变量的内存是4字节,对于Int64类型变量分配的内存是8字节。

你不能将 64 字节的数据放入 32 字节的数据中,就像你不能将 2 升水放入 1 升瓶子中一样。

为了避免此类问题,swift具有严格的类型检查功能,确保在运行时间内不会出现此类问题。