swift - 整数文字“4294967295”在存储到“Int”时溢出
问题描述
当我归档我的项目时,我收到一条错误消息。如何解决?错误在第 2 行。
func random() -> CGFloat{
return CGFloat(CGFloat(arc4random()) / 0xFFFFFFFF)
}
func random(min: CGFloat, max: CGFloat) -> CGFloat{
return random() * (max - min) + min
}
解决方案
编译器将其视为整数文字,但对于32 位平台上0xFFFFFFFF
的(有符号),该值太大。Int
选择 (unsigned)UInt32
可以解决问题:
func random() -> CGFloat{
return CGFloat(arc4random()) / CGFloat(UInt32.max)
}
推荐阅读
- asp.net-mvc - IIS 网站的 url 重写可能发生在哪里?
- c# - asp.net在Datatable中求和数据,但第一行和最后一行缺少数据
- javascript - 滚动到 javascript
- php - 我应该如何在以下语句中单独打印 $headcount ?建议任何预定义的功能
- python - 写一个列表然后反转它返回
- android - 使用 recyclerview 布局图像
- .net-core - Service Fabric V2 远程处理自定义标头
- amazon-web-services - serverless.yml 如何在 Cognito Lambda Config 中引用 lambda 函数
- php - 找不到 Linux laravel 迁移驱动程序
- c# - 创建asp.net web api core 2.0项目的msi