8

Tôi đã nhìn thấy rất nhiều thông tin về việc chuyển đổi toàn bộ dự án thành vòng cung và sau đó sử dụng cờ để báo cho Xcode biết những người nào không chuyển đổi.Chuyển đổi các tệp riêng lẻ thành vòng cung?

Điều gì chỉ chuyển đổi các tệp riêng lẻ thành vòng cung? Tôi đã thử nó, và nó chạy tốt. Tôi có thể làm điều đó? Tôi lo lắng rằng vì toàn bộ dự án không được chuyển thành vòng cung nếu tôi chuyển đổi mọi thứ ở đây và chúng sẽ gây rò rỉ bộ nhớ.

Trả lời

6

Có, bạn có thể. Tuy nhiên, bạn cần phải cho trình biên dịch biết các tệp nào không phải là ARC. Điều này bạn có thể làm trong cài đặt dự án của bạn. Truy cập your project>Select the target of the app in question>Build Phases. Bây giờ thả xuống "Compile Sources" và chọn các tập tin bạn muốn không biên dịch với ARC, nhấn ENTER và một hộp popup nhỏ sẽ xuất hiện. Ở đây bạn có thể viết -fno-objc-arc. Nhấn Done và bạn đã hoàn tất.

Khi biên dịch, nó sẽ cố gắng thêm tính toán tham chiếu tự động vào các tệp không có cờ -fno-objc-arc. Rất hữu ích khi sử dụng lib không phải arc như ASIHTTPRequest hoặc MBProgressHud (và những người khác).

+0

Làm thế nào bạn có thể nói rằng nó đang cố gắng sử dụng ARC cho các tập tin khác? Có vẻ như để nhớ những tập tin mà nó đã chuyển đổi sang ARC và những tập tin nào nó không có. –

+0

Và nếu bạn đang sử dụng một số thư viện không thể sử dụng ARC? Có rất nhiều tập tin để thay đổi, bạn có phải thiết lập các lá cờ riêng cho tất cả chúng, hoặc là có một cách tốt hơn? –

+0

Đó là một lá cờ được thiết lập để trình biên dịch trong các thiết lập dự án của bạn được gọi là 'Mục tiêu tham chiếu tự động-C '. –

1

Để nói chỉ tập tin nhất định được ARC sử dụng cờ:

-fobjc-arc 
Các vấn đề liên quan