Я пытаюсь записать свой первый класс в цели-c, и я хочу передать объект NSString в качестве параметра в методе класса, однако я получаю ошибку при высказывании, что "не может использовать объект в качестве параметра к методу". Таким образом, мой вопрос состоит в том, как Вы передаете строку в качестве параметра методу? вот мой код tht, я пытаюсь взяться за работу:
#import <Foundation/Foundation.h>
@interface Car
{
NSString *color;
NSString *make;
int year;
}
- (void) print;
- (void) setColor: (NSString) c;
- (void) setMake: (NSString) m;
- (void) setYear: (int) y;
@end
@implementation Car
- (void) print
{
NSLog(@"The $d Ford %@ is $@.", year, make, color);
}
- (void) setColor: (NSString) c
{
color=c;
}
- (void) setMake: (NSString) m
{
make=m;
}
- (void) setYear: (int) y
{
year=y;
}
@end
int main (int argc, const char * argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
Car *car= [Car new];
[car setColor:@"blue"];
[car setMake:@"Bronco"];
[car setYear:1992]
[car print];
[car release];
[pool drain];
return 0;
}
Вам нужно передать указатель на ваш строковый объект. Поэтому вам нужно добавить * к типу параметра:
f.e.
- (void) print;
- (void) setColor:(NSString *) c;
- (void) setMake:(NSString *) m;
- (void) setYear:(int) y;
и то же в реализации