我有以下類別:IOS爲什麼初始化失敗時使用_variable,但不使用self.variable替換NSNumber?
---- .h文件中
#import <Foundation/Foundation.h>
#import "MapperProtocoll.h"
@interface ServiceRequest : NSObject {
}
@property (strong, nonatomic) NSString *url;
@property (strong, nonatomic) NSString *postData;
@property (strong, nonatomic) NSNumber *requestId;
@property (strong, nonatomic) id<ServiceMapperDelegate> mapper;
-(id)initWithUrl:(NSString *)url andWithPostdata:(NSString *)postData;
@end
------- .m文件
#import "ServiceRequest.h"
@implementation ServiceRequest
@synthesize url = _url, postData = _postData, requestId = _requestId, mapper = _mapper;
-(id)initWithUrl:(NSString *)url andWithPostdata:(NSString *)postData {
if (self = [super init]) {
_url = url;
_postData = postData;
self.requestId = [NSNumber numberWithInt:-1]; // HERE IS THE PROBLEM
}
return self;
}
@end
爲什麼 self.requestId = [NSNumber numberWithInt:-1]; 工作,但 _requestId = [NSNumber numberWithInt:-1]; 拋出運行時錯誤?
它拋出了什麼錯誤? – 2012-07-27 18:34:38
嘗試構建一個最小程序來隔離問題。然後,逐步添加功能,直到找到錯誤的來源。 – Etan 2012-07-27 18:37:30
它拋出EXC_BAD_ACCESS – CPlusPlus 2012-07-27 19:05:34