【问题标题】:Remainder operator with arc4random() and an array's count causes "could not find an overload" error带有 arc4random() 和数组计数的余数运算符导致“找不到重载”错误
【发布时间】:2014-07-25 16:16:45
【问题描述】:

这段代码

    var randomNumber: Int = arc4random() % nameArray.count

给我错误“找不到接受提供的参数的 '%' 的重载”

我仍在尝试习惯语法并阅读文档,但似乎无法弄清楚这一点。有人可以帮忙吗?

【问题讨论】:

    标签: types compiler-errors swift


    【解决方案1】:

    您必须将arc4random() 的返回值(CInt)转换为Int

    var randomNumber: Int = Int(arc4random()) % nameArray.count
    

    【讨论】:

    • 效果很好。我是第一个这样做的,从没想过在弧前投射: arc4random() % nameArray.Count as Int
    【解决方案2】:

    您是否尝试过将arc4random() 的返回值转换为Int

    var randomNumber: Int = Int(arc4random()) % nameArray.count
    

    【讨论】:

      猜你喜欢
      • 2020-06-09
      • 2011-08-25
      • 2020-05-19
      • 2019-08-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-02
      • 2021-11-27
      相关资源
      最近更新 更多