设置Instance方法的返回值

时间:2012-07-15 04:50:25

标签: objective-c methods return instance

我知道Instance方法在执行完毕后可以返回一个值,但我不知道如何设置&获取该值,我知道如何设置参数,但如何设置Method本身的返回类型?

所以,这是Instance方法实现:

-(int) returnInteger: (id) anString: (int) anNumber{

设置我的参数:

 [self returnInteger: (id) returnNSString: (int) 100]; 

但是我如何设置“returnInteger本身”的值我想知道如何设置我的实现和我调用它(当它执行时)。

还 - 还有一个问题

如果我在方法中将第一个参数设置为100,当我调用它时我想添加100,我该怎么做?我试过这个但是没有用

[self returnInteger: (id) returnNSString: (int) + 100]; 

1 个答案:

答案 0 :(得分:0)

我仍然不确定你在问什么,但这里有一个可能有用的例子。

@interface Juniper : NSObject
// Return type int, first parameter type NSString * and named s,
// second parameter type int and named i. Method's name is
// addNumberInString:toInt:
- (int)addIntInString: (NSString *)s toInt: (int)i;
@end

@implementation Juniper

- (int)addIntInString: (NSString *)s toInt: (int)i
{
    // Extract int from argument named s
    int intFromString = [s intValue];
    // Add that int to argument named i and end 
    // method, returning the result of addition
    return intFromString + i;
}

@end



int main(int argc, const char * argv[])
{

    @autoreleasepool {

        Juniper * j = [[Juniper alloc] init];
        // Execute the method, store the return value
        int result = [j addIntInString:@"100" toInt:15];
        // Display the return value so we know it worked.
        NSLog(@"%d", result);

    }
    return 0;
}