我对目标C相当新,我无法声明一个带有两个参数的方法。在我的.h文件中,我有以下内容:
-(void)refreshTime:(NSTimeInterval *) absoluteTimeRemainSeconds, (NSDate *) targetDate;
在我的.m文件中,我有以下内容:
-(void) refreshTime:(NSTimeInterval *) absoluteTimeRemainInSeconds, (NSDate *) targetDate {
我希望方法二接受两个参数,一个是NSTimeInterval和一个NSDate,但是我现在的方式是它不能正常工作。谁能看到我的错误?非常感谢帮助。
答案 0 :(得分:3)
有些事情是错误的:首先,参数之间没有逗号,第二个参数名称(和类型)在你正在做的冒号之后。使用代码的示例:
-(void) refreshTime:(NSTimeInterval*)absoluteTimeRemainSeconds usingTargetDate:(NSDate*)targetDate;
答案 1 :(得分:1)
这将是这样做的好方法
-(void)refreshTime:(NSTimeInterval *) absoluteTimeRemainSeconds targetDate:(NSDate *) targetDate;
和
-(void)refreshTime:(NSTimeInterval *) absoluteTimeRemainSeconds targetDate:(NSDate *) targetDate{}
如果你不想要,你不需要命名参数,但你必须在两个参数之间留空间而不是冒号。
干杯
答案 2 :(得分:0)
-(void)refreshTime:(NSTimeInterval *)absoluteTimeRemainSeconds withDate:(NSDate *)targetDate;
就是这样。 Obj-C使用命名参数,只需在每个参数之后放置一个空格并遵循相同的语法。冒号表示参数类型和名称的开头。你甚至不必实际使用名字,
-(void)refreshTime:(NSTimeInterval *)absoluteTimeRemainSeconds :(NSDate *)targetDate;
但它更容易用名字阅读。