Привет, я вообще создаю объекты других классов. Можете ли вы, пожалуйста, связаться со мной, если это будет в автоматическом пуле релизов? или мы должны выпустить его вручную.Объекты Dealloc другого класса
ответ
, если вы инициализации копировать новый или их вы должны освободить их, если положить autorlease с распределением, то они будут autoreleased
, например
Foo *foo = [[Foo alloc] init]; //you'll have release it somewhere yourself
И
Foo *foo = [[[Foo alloc] init] autorelease];// this will be autreleased
Простой случай: если вы используете init, вы несете ответственность за его освобождение либо путем вызова выпуска, либо путем вызова autorelease.
например.
NSString *myString = [NSString alloc] init]; // You need to release this
...
[myString release]; // Now it's released - don't use it again!
или если вы собираетесь отдать его кому-то другому
NSString *myString = [NSString alloc] init]; // This needs releasing
...
return [myString autorelease]; // You are finished with it but someone else might want it
Однако, есть несколько других случаев.
NSString *myString = [NSString stringWithFormat:@"hi"];
Этот объект еще в авторизованном бассейне - не выпускайте его!
NSString *secondString = [myString copy];
Этот объект нуждается в освобождении - это не autoreleased.
Правило большого размера: Что-нибудь с init, копией или новым именем - вы сделали это, вы отпустите его. Все остальное будет автореализовано.
Правило большого пальца не совсем корректно: это не 'init', а' alloc', требующий освобождения, кроме того, ему не хватает 'new'. – danyowdee
Blast, я всегда забываю 'new' :(Я отредактировал свой ответ, спасибо! – deanWombourne
- 1. Инициализировать объекты другого класса в PHP
- 2. Метод, который создает объекты другого класса
- 3. Использу объекты другого класса в Python
- 4. C++ вызывая объекты из другого класса
- 5. Как создать объекты внутри другого класса?
- 6. Почему объекты не освобождаются в методе dealloc?
- 7. вызов класса из другого класса
- 8. Рисование Графические объекты от класса до JPanel другого класса
- 9. PHP - сделать объекты класса как свойства другого класса
- 10. Вызов функции другого класса из другого класса
- 11. пользовательских dealloc UITableViewCell класса не называется
- 12. переменные класса object-c: когда вызывается dealloc?
- 13. Загрузить существующие объекты класса в JVM из другого JVM
- 14. Переменная не найдена. Ссылка на объекты из другого класса
- 15. java не может извлекать объекты массива из другого класса
- 16. Ошибка в сборщиках классов C++, возвращающих объекты другого класса
- 17. асинхронные методы, вызываемые внутри `-dealloc` может генерировать нежелательные объекты зомби
- 18. вызов метода класса из другого класса
- 19. Программно Отображение UILabel из другого класса
- 20. Как установить текст UILabel из другого класса
- 21. Dealloc a viewcontroller warning
- 22. C#: Список заказного класса свойство другого класса
- 23. dealloc после instantiateViewControllerWithIdentifier
- 24. NSMutableArray и память dealloc
- 25. доступ переменная другого класса из внутреннего класса другого класса
- 26. Метод Dealloc в категории
- 27. Освобождение объекта в dealloc
- 28. Dealloc откладывается
- 29. Как мне вызвать переменную из другого класса?
- 30. Может ли карта содержать объекты класса или объекты класса?
Вам нужно показать код или объяснить свой вопрос лучше, или и то, и другое. Некоторые объекты, которые вы создаете, могут быть автореализованы, другие могут не ... –