我正在嘗試創建一個遊戲,其中的人們回答問題。我正在從文本文件加載問題。不同部分之間用?和問題分開。分離的代碼工作正常,除了當我試圖用它創建一個問題。拆分NSString後獲取EXC_BAD_ACCESS
for(int n = 0; n<[questionsFromFile count]; n++)
{
NSArray *params = [((NSString *)questionsFromFile[n]) componentsSeparatedByString:@"•"];
NSString *fact = params[0];
NSString *prompt = params[1];
NSString *image = params[2];
NSString *answerAsString = params[3];
BOOL answer = [answerAsString boolValue];
YNQuestion *question = [[YNQuestion alloc]initWithFact:fact prompt:prompt image:image answer:answer];
[self.allQuestions addObject:question];
}
在questions.txt:
fact•prompt•unknown.png•YES
§fact•prompt•unknown.png•NO
當我運行它,直到問題被加載它工作正常。然後,它與EXC_BAD_ACCESS(code=2)
崩潰。如果我將事實,提示,圖像等替換爲「你好」或@「再見」,它可以正常工作。
我正在使用ARC。另外,這裏是YNQuestion
的代碼。
@interface YNQuestion : NSObject
@property(assign, nonatomic)NSString *fact;
@property(assign, nonatomic)NSString *prompt;
@property(assign, nonatomic)NSString *image;
@property(assign, nonatomic)BOOL answer;
-(id)initWithFact:(NSString *)fact prompt:(NSString *)prompt image:(NSString *)image answer: (BOOL) answer;
-(BOOL)checkIfCorrect: (BOOL)answer;
@end
現在,它的工作。只適用於那些不是我的默認設置。
驚喜!它不再工作。我相信錯誤是在.txt文件中有硬編碼的答案和答案。我在測試。
請在'YNQuestion'中發佈實例變量/屬性的頭部定義。你還使用ARC還是手動引用計數? –
@JasonHarwig我剛剛做到了。 – joeelectricity