我在swift中有以下代码来检查执行时间:
let q = NSDate();
... // Some code here
let r = NSDate.timeIntervalSinceDate(q);
print("Execution time is \(r)");
每次执行时,都会打印“执行时间为(功能)”。
我甚至确认r
的类型是(NSDate) -> NSTimeInterval
。如何设置r
等于NSTimeInterval
本身?
答案 0 :(得分:3)
您遇到的问题是NSDate.timeIntervalSinceDate
是NSDate类的方法。您正在从该方法创建一个已填充变量的函数对象,但仍需要在对象上调用它。
简单的解决方法如下:
let q = NSDate()
// other code here
let r = NSDate().timeIntervalSinceDate(q)
print("Execution time is \(r)")
另一种选择是这样做:
let q = NSDate()
// other code here
let r = q.timeIntervalSinceNow
print("Execution time is \(r)")