我在构建项目后只得到了这个失败。 我正在使用XCode 4.6.3
class.m
#import "Car.h"
//constructor
-(id)init //<----- ***MISSING CONTEXT FOR METHOD DECLARATION***
{
self = [super init];
if(self){
self.brand = @"";
self.model = @"";
self.vin = 0;
}
return self;
class.h不包含任何错误。
#import <Foundation/Foundation.h>
@interface Car : NSObject
{
NSString *brand, *model;
NSNumber *vin;
}
//set
-(void) setBrand:(NSString *) newBrand;
-(void) setModel:(NSString *) newModel;
-(void) setVIN:(NSNumber *) newVIN;
//get
-(NSString *) getBrand;
-(NSString *) getModel;
-(NSNumber *) getVIN;
//methods
-(void) accelerateTo100;
-(void) fuelConsuming;
-(void) hardStop;
@end
你能帮我解决这个问题。非常感谢。
答案 0 :(得分:1)
与Car类相关的方法的实现总是包含在@implementation Car
中,并以@end
结束。您正在声明并实现方法,而不告诉编译器它们属于哪个类。
答案 1 :(得分:1)
检查@implementation部分中是否没有#import“...”。
答案 2 :(得分:0)
答案是@CodaFi解释的。试试这个
#import "Car.h"
@implementation Car
-(id)init
{
self = [super init];
if(self){
[self setBrand : @""];
[self setMode1 : @""];
[self setVIN : @""];
}
return self;
}
@end