2012-07-22 51 views
-6

我定义方法与目的C.参数我在此代码h文件定义的方法:定义方法与在目标C参数

-(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 
} 

这是正确的吗?

+0

为什么downvote?问题非常清楚。 – bla0009 2012-07-22 13:30:51

+1

不是我的投票,但我猜测它是在询问之前完成的研究数量的评论:http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/ObjectiveC/Chapters/ocObjectsClasses。 html#// apple_ref/doc/uid/TP30001163-CH11-SW6 – 2012-07-22 13:47:21

+0

我看到了,但对我而言并不那么清楚,这就是为什么我问。另外,我写了我的意见.. – bla0009 2012-07-22 13:49:58

回答

2

在您的例子:

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

所有你需要做的,使用params为叫你设置的变量的名称。你的方法已经被声明为返回一个int,所以你需要确保你完成后返回一个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; 

我看看苹果的Objective-C约定指南刷上命名。例如,我会打电话给第二个参数“anArray”或类似的东西。这使得它更清楚你在做什么。

+0

谢谢,这就是我需要的 – bla0009 2012-07-23 13:16:25