Я использую последний xcode. Файл реализация: SimpleCar.m:Объективные методы C [сделать выпуск] выпуск
#import "SimpleCar.h"
@implementation SimpleCar
// set methods
- (void) setVin: (NSNumber*)newVin {
[vin release];
vin = [[NSNumber alloc] init];
vin = newVin;
}
- (void) setMake: (NSString*)newMake {
[make release];
make = [[NSString alloc] initWithString:newMake];
}
- (void) setModel: (NSString*)newModel {
[model release];
model = [[NSString alloc] initWithString:newModel];
}
// convenience method
- (void) setMake: (NSString*)newMake
andModel: (NSString*)newModel {
// Reuse our methods from earlier
[self setMake:newMake];
[self setModel:newModel];
}
//get methods
- (NSString*) make; {
return make;
}
- (NSString*) model;{
return model;
}
- (NSNumber*) vin;{
return vin;
}
-(void) dealloc
{
[vin release];
[make release];
[model release];
[super dealloc];
}
@end
интерфейс файла: SimpleCar.h:
#import <Foundation/Foundation.h>
@interface SimpleCar : NSObject {
NSString* make;
NSString* model;
NSNumber* vin;
}
// set methods
- (void) setVin: (NSNumber*)newVin;
- (void) setMake: (NSString*)newMake;
- (void) setModel: (NSString*)newModel;
// convenience method
- (void) setMake: (NSString*)newMake
andModel: (NSString*)newModel;
// get methods
- (NSString*) make;
- (NSString*) model;
- (NSNumber*) vin;
@end
Я получаю сообщение об ошибке в файле реализации, когда я типа «[Vin релиз], [модель release], [сделать выпуск] ", и я не могу запустить программу.
Это не только не связано с Xcode, но и не имеет всех исследований. Если вы google сообщение об ошибке (которое я предполагаю, это «ARC запрещает явный вызов для выпуска»), вы получите несколько десятков ответивших SO-вопросов. – 2013-05-12 20:32:17
Кроме того, сеттеры выполнены неправильно. – yinkou
Куда бы вы не получили этот код, выбросьте источник и не смотрите на него снова. Мало того, что все сеттеры реализованы некорректно, но общий шаблон выглядит как стандартная ярмарка от ~ 15 лет назад. Бросьте его и получите актуальный учебник. (Я нашел учебный сайт - это ужасно). – bbum