NSString Добавить EXC_BAD_ACCESS URL-соединение - PullRequest
1 голос
/ 19 января 2012

Я новичок в Objective-C, но я медленно прогрессирую.Все, что я хотел бы сделать, это добавить новую строку в текущую строку.Мне нужно сделать это для моего NSURLConnection, чтобы я мог поместить все данные в одну строку.В настоящее время у меня есть что-то подобное, но оно работает, и я не до конца понимаю, почему и что мне нужно сделать, чтобы это исправить.память, однако я не до конца понимаю, что.

1 Ответ

1 голос
/ 19 января 2012

StringByAppendingString - это удобный метод, который не начинается с «new» или содержит «alloc» или «copy», возвращаемая строка будет autoreleased наиболее вероятно в следующем цикле выполнения, поэтому при попыткечтобы прочитать его снова из HTML, он уже был выпущен.Чтобы это исправить, вы можете отправить сообщение copy, например:

htmlTemp = [html copy];

. Я бы порекомендовал сделать свойство htmlTemp следующим образом:

@property (nonatomic, copy) NSString *htmlTemp;

Таким образом, когда вы назначаете новое значениек нему, используя установщик, старое значение будет освобождено, прежде чем указывать на новое значение таким образом, как вы можете сделать:

self.htmlTemp = [htmlTemp stringByAppendingString:temp];
...