Tôi nghĩ rằng tôi biết sự khác biệt, nhưng không biết làm thế nào để giải thích một cách chính xác.Điều gì giải thích tốt nhất về sự khác biệt giữa [myVar dealloc] và [myVar release]?
dealloc xóa bộ nhớ được đặt trước bởi biến đó hoàn toàn và ngay lập tức.
giảm phát hành bộ đếm lưu giữ của bộ nhớ của biến đó bằng -1. nếu đó là 1, thì đó là 0, vì vậy nó sẽ có tác dụng tương tự như dealloc trong thời điểm đó.
đúng không? hoặc là có một lời giải thích ngắn hơn?
nhờ. tôi nghĩ rằng tôi là một chút nhầm lẫn bây giờ ... vì vậy bên trong các phương pháp dealloc của lớp con, tôi phải dealloc biến dụ của tôi, phải không? tức là - (void) dealloc { \t [yellowViewController dealloc]; \t [blueViewController dealloc]; [super dealloc]; } – Thanks
Chỉ cần rõ ràng, không bao giờ gọi dealloc trên bất cứ điều gì ngoại trừ siêu. Việc thực hiện đúng phương thức Thanks 'dealloc là: - (void) dealloc {[yellowViewController release]; [phát hành blueViewController]; [super dealloc]; } – rpetrich
Tôi thấy bạn đang đọc Bắt đầu phát triển iPhone 3 - Khám phá SDK (Tôi cũng vậy, tôi đã nhận ra dự án bộ điều khiển chế độ xem màu vàng/xanh lam). – mk12