Table of Contents
Previous Section
- recordMe {
if ([aName length]) {
[[self application] setLastVisitor:aName];
[self setAName:@""]; // clear the text field
}
}
Methods can take arguments. To define a method that takes arguments, you place the argument name after a colon (:). For example, the following method takes two arguments. It adds the two arguments together and returns the result:
- addFirstValue:firstValue toSecondValue:secondValue {
id result;
result = firstValue + secondValue;
return result;
}
The strings that appear to the left of the colons are part of the method name. The method above is named addFirstValue:toSecondValue:. It takes two arguments, which it calls firstValue and secondValue. If you want, you can add type information for the return values and parameter values. For example, the following method, subtractFirstValue:fromSecondValue:, subtracts one number from another and returns the result:
- (NSNumber *)subtractFirstValue:(NSNumber *)firstValue
fromSecondValue:(NSNumber *)secondValue {
NSNumber *result;
result = secondValue - firstValue;
return result;
}
In these examples, note the following:
// NO!! This won't work.
- (id)aMethod:(id)anArg { ... }
// This won't work either.
- (void) aMethod:(NSString *)anArg { ... }
Both example methods return a value, stored in result. If a method doesn't return a meaningful value, you don't have to include a return statement (and, as stated above, even if a method returns no value you shouldn't declare it as returning void).
Table of Contents
Next Section