【问题标题】:Swift- Cannot invoke '-' with an argument list of type (NSNumber , NSTimeinterval)Swift-无法使用类型参数列表调用“-”(NSNumber,NSTimeinterval)
【发布时间】:2014-11-01 05:03:10
【问题描述】:

我正在尝试从应用程序起点的某个点获取当前时间。

var startTime = NSDate.timeIntervalSinceReferenceDate()
     var currentTime: NSNumber = 0

    for var i = 0; i < 10000; i++ {
        if i == 99 {
            currentTime = NSDate.timeIntervalSinceReferenceDate()
            println(i)
        }

    }
    var elapsedTime = currentTime - startTime
    println(Double(elapsedTime))
}

我得到这个错误:

Cannot invoke '-' with an argument list of type '(@!Value NSNumber, @!Value NSTimerinerval)

我知道这是我无法弄清楚的类型,有什么建议吗?

【问题讨论】:

    标签: swift nsnumber nstimeinterval


    【解决方案1】:

    startTime 是 NSTimeInterval,它与 NSNumber 不同,后者是您声明的 currentTime 位于该函数的顶部。

    将currentTime 的声明更改为:

     var currentTime: NSTimeInterval = 0
    

    【讨论】:

    • 当你尝试从类方法调用实例方法时也会出现错误Cannot invoke 'yourMethodName' with an argument list of type....。
    猜你喜欢
    • 2015-06-06
    • 1970-01-01
    • 1970-01-01
    • 2019-07-20
    • 2016-10-09
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多