How to know if my Xcode iPhone project is using ARC?

后端 未结 2 1985
鱼传尺愫
鱼传尺愫 2021-02-05 01:36

I want to know if my Xcode iPhone project is using ARC, and I can\'t remember if I ticked that box when creating the project.

How can I get this information?

2条回答
  •  闹比i
    闹比i (楼主)
    2021-02-05 02:29

    Select your project, then Build Settings. Look for Objective-C Automatic Reference Counting in the Apple LLVM Compiler - Language section. Make sure you select the target; while you can set this in the project, the target can override it.

    (You can also use the search bar in Build Settings for OBJC_ARC.)

    Keep in mind, too, that you can turn ARC on or off on a per file basis in build phases.

    Or, just try something like this in code:

    [[[NSObject alloc] init] autorelease]
    

    If you get an error:

    ARC forbids explicit message send of 'autorelease'
    

    Then you're using ARC.

    You can also require ARC from a source code file by checking for it:

    #if !__has_feature(objc_arc)
    #error This file must be built with ARC.
    // You can turn on ARC for only this file by adding -fobjc-arc to the build phase.
    #endif
    

提交回复
热议问题