使用目标C中的参数定义方法

时间:2012-07-22 13:21:09

标签: iphone objective-c xcode

我在Objective C中使用参数定义方法。我使用以下代码在.h文件中定义了方法:

-(int)canFindSquare:(NSString *)param1 array:(NSArray *)param2

现在,我正在.m文件中处理该方法:

-(int)canFindSquare:(NSString *)param1 array:(NSArray *)param2{
    NSLog(@"something");
}

如何在方法中使用字符串和数组?

而且我想使用该方法返回一些值。我怎么能在if语句中使用该方法。也许是这样的:

is ([self canFindSquare(string1, array1)] == 1){
   // do something here
}

这是正确的吗?

1 个答案:

答案 0 :(得分:2)

在你的例子中:

- (int)canFindSquare:(NSString *)param1 array:(NSArray *)param2{
    NSLog(@"something");
}

使用params所需要做的就是调用你设置的变量的名称。您的方法已声明为返回int,因此您需要确保在完成后返回一个。然后你的来电者可以测试它。这应该工作

- (int)canFindSquare:(NSString *)param1 array:(NSArray *)param2{
    NSLog(@"param1 is %@ and param2 is %@", param1, param2);

// Some tests
return 1;
}

请记住,ObjC非常清楚你如何称呼事物。所以你会这样称呼你的方法:

canFindSquare:aString array:anArray;

我将看一下Apple的Objective-C约定指南,以便了解命名。例如,我会将第二个参数称为“anArray”或类似的东西。这使你更清楚自己在做什么。