Thuộc tính thuộc tính mạnh là gì


80

Tôi đang sử dụng Xcode beta dành cho nhà phát triển và nhận thấy một số khác biệt nhỏ. Trong số đó có một thuộc tính mới cho các thuộc tính đã khai báo.

@property(strong)IBOutlet NSArrayController *arrayControl;

Câu hỏi của tôi là: thuộc tính mạnh có nghĩa là gì ?? Nó có thay thế một số cũ hơn hay là một thứ hoàn toàn mới? Tôi đã tìm kiếm thông qua google và tài liệu của nhà phát triển và không thể tìm thấy bất cứ điều gì. Cho đến khi tôi biết nó là gì, tôi vẫn do dự khi sử dụng nó.

Cảm ơn trước


1
Thực sự không còn khả năng nói về beta NDA thứ ở đây ...
Kendall Helmstetter Gelner

3
Vâng, nó không giống như im cho bí mật đi công ty, nhưng yes i có lẽ đã đặt này trên các diễn đàn táo dev
Chance Hudson

Tôi tiếp tục thấy những nhận xét "beta NDA" này về nội dung c khách quan. Tôi thấy thật vui khi Apple cảm thấy cần phải bảo vệ bí mật c khách quan của mình (mọi người đều đang chết vì sao chép mục tiêu c!), Và thậm chí còn hài hước hơn là các nhà phát triển cảm thấy cần phải đi xung quanh để làm phiền mọi người về nó.
Jehan

Câu trả lời:



10

Tham chiếu mạnh là tham chiếu đến một đối tượng ngăn nó được phân bổ. Nói cách khác, nó tạo ra một mối quan hệ chủ sở hữu. Trong khi trước đây bạn sẽ làm điều này:

**// Non-ARC Compliant Declaration
@property(retain) NSObject *obj;**

Theo ARC, chúng tôi thực hiện những điều sau để đảm bảo một cá thể lớp có quyền sở hữu đối tượng được tham chiếu (nghĩa là nó không thể được phân bổ cho đến khi có chủ sở hữu).

**// ARC Compliant Declaration
@property(strong) NSObject *obj;**

4

Như chúng ta đã biết, chúng ta không thể phát hành bất kỳ đối tượng nào trong một dự án dựa trên ARC trong iOS 5. Vì vậy, khi chúng ta muốn giữ lại bất kỳ đối tượng nào để sử dụng thêm ở giai đoạn sau và không muốn ARC xóa đối tượng đó khỏi bộ nhớ, thì chúng ta thiết lập thuộc tính cho đối tượng là "Mạnh".

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.