[objective-c] 프로젝트에서 단일 파일에 대해 ARC를 비활성화하려면 어떻게해야합니까?

프로젝트에서 ARC를 성공적으로 사용하고 있습니다. 그러나 ARC 규칙이 지금보다 조금 더 취약한 몇 가지 파일 (예 : 단위 테스트 및 모의 객체)이 발생했습니다. 이 옵션을 찾을 수 없지만 파일별로 ARC를 비활성화하는 방법이 있다는 것을 들었습니다.

이것이 가능한가? 파일 단위로 ARC를 비활성화하려면 어떻게합니까?



답변

-fno-objc-arc해당 파일에 컴파일러 플래그를 추가하여 개별 파일에 대해 ARC를 비활성화 할 수 있습니다.

타겟-> 빌드 단계-> 컴파일 소스에서 컴파일러 플래그를 추가합니다. 컴파일러 플래그 아래 행의 오른쪽 열을 두 번 클릭해야합니다 . cmd 버튼을 누른 상태에서 파일을 선택한 다음 enter를 눌러 플래그 편집 상자를 표시하여 여러 파일에 파일을 추가 할 수도 있습니다. (여러 파일을 편집하면 이미있을 수있는 플래그를 덮어 씁니다.)

https://github.com/jaminguy/NoArc 예제가있는 샘플 프로젝트를 만들었습니다.

xcode

자세한 내용은이 답변을 참조하십시오 :
일부 파일에 대한 자동 참조 계산 비활성화


답변

여러 파일에서 ARC비활성화 하십시오.

  1. Xcode의 Target / Build Phases / Compile Sources에서 원하는 파일을 선택하십시오.
  2. 엔터 키를 치시오
  3. -fno-objc-arc 유형
  4. Enter 또는 완료를 누르 십시오

😉

여기에 이미지 설명을 입력하십시오


답변

Xcode 4.3의 경우 더 쉬운 방법은 다음과 같습니다. objective-C ARC로 편집 / 리팩터링 / 변환 한 다음 변환하지 않으려는 파일을 확인하십시오. 이 방법은 위의 컴파일러 플래그를 사용하는 것과 동일합니다.


답변

개별 파일을 비 아크로 만드는 것은 매우 간단한 방법입니다.

아래 단계를 따르십시오.

개별 파일에서 ARC를 비활성화합니다 :

  1. Xcode의 Target / Build Phases / Compile Sources에서 원하는 파일을 선택하십시오.

  2. NON-ARC PRESS는 유형 입력 당신이 그것을 확인하고자하는 .m 파일을 선택 -fno-objc 아크를

ARC 파일이 아닌 ARC 파일 플래그 : -fno-objc-arc

비 ARC 프로젝트 플래그에 대한 ARC 파일 : -fobjc-arc


답변

참고 : 많은 파일에 대해 ARC비활성화 하려면 다음을 수행해야합니다.

  1. “빌드 단계”-> “컴파일 소스”열기
  2. 가진 파일을 선택 “left_mouse를”+ “에 cmd” (분리 된 파일의 경우) 또는 + “교대”
    (그룹화 된 파일 – 처음과 마지막 선택)
  3. 엔터 키를 치시오”
  4. -fno-objc-arc
  5. “입력”을 다시 누르십시오
  6. 이익!

답변

-fno-objc-arc깃발을 사용하십시오 Build Phases>Compile Sources


답변

  1. Xcode 프로젝트 선택
  2. 목표로 이동
  3. 빌드 단계 섹션을 선택하십시오.
  4. 빌드 단계 섹션에서 컴파일 소스를 선택하십시오.
  5. ARC를 비활성화하지 않을 파일을 선택하고 -fno-objc-arc를 추가하십시오

특정 파일에 대한 ARC 비활성화