swift – 将参数传递给方法时出现“调用中的额外参数”错误
发布时间:2020-12-14 05:38:17 所属栏目:百科 来源:网络整理
导读:我试图在 swift中编写以下Objective-C代码: NSCalendar *cal = [NSCalendar currentCalendar];NSDate *now = [NSDate date];NSDate *startOfTheWeek;NSTimeInterval interval;[cal rangeOfUnit:NSWeekCalendarUnit startDate:startOfTheWeek interval:inter
我试图在
swift中编写以下Objective-C代码:
NSCalendar *cal = [NSCalendar currentCalendar]; NSDate *now = [NSDate date]; NSDate *startOfTheWeek; NSTimeInterval interval; [cal rangeOfUnit:NSWeekCalendarUnit startDate:&startOfTheWeek interval:&interval forDate:now]; 它会写本周开始的时候开始的周期和周期间隔. 在我写的操场上 let now:NSDate = NSDate() var startDate:NSDate var duration: NSTimeInterval // also tried "var duration: CMutablePointer<NSTimeInterval>" let cal = NSCalendar.currentCalendar() cal.rangeOfUnit(unit: NSCalendarUnit.WeekCalendarUnit,startDate: startDate,interval: duration,forDate: now)" 虽然代码完成告诉我签名是 cal.rangeOfUnit(<#unit: NSCalendarUnit#>,startDate: AutoreleasingUnsafePointer<NSDate?>,interval: <#CMutablePointer<NSTimeInterval>#>,forDate: <#NSDate?#>) 在调用中说出额外参数’interval’时出错 我究竟做错了什么? 我也试过了 cal.rangeOfUnit(NSCalendarUnit.WeekCalendarUnit,forDate: now) 但这会产生错误
试试这个:
let now = NSDate() var startDate: NSDate? = nil var duration: NSTimeInterval = 0 let cal = NSCalendar.currentCalendar() cal.rangeOfUnit(NSCalendarUnit.WeekCalendarUnit,startDate: &startDate,interval: &duration,forDate: now) (默认情况下,第一个参数没有外部名称,因此不应该命名.) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |