Ответы: -
действительно ли мне нужно объявить aString в "1"?(см. код) - Теперь, начиная с iOS 4, вам не нужно объявлять.
Если я синтезирую aString = _aString, я уже создаю переменную экземпляра, верно?- Да
, если я сохраняю свойство в foo.h (@property), почему XCode жалуется, если я освобождаю aString в dealloc?- теперь вам нужно использовать это - self.aString = nil, это позаботится.