나는 BOOL 속성 (포인터가 아님)이있는 뷰 컨트롤러를 가지고 있거나, viewDidLoad에 할당되지 않은 것처럼 보이는 쓰레기를 볼 수 있습니다. BOOL은 필요할 때 할당됩니다. 뷰 컨트롤러가 할당 해제되면 (아크를 사용하고 있습니다) 나중에 재 작성합니다. 이전 인스턴스 값이 BOOL 인 경우 (VC가 할당 해제되기 전에) 새 인스턴스 BOOL 변수의 초기 값도 YES가됩니다. 이걸 아주 이상하게 생각해.기본 형식 상태가 인스턴스간에 보존되는 이유는 무엇입니까?
- 는 속성 선언 (비 원자 할당)
- 가 dealloc을 변경하지,있는 viewDidLoad에서 설정 작업 방법의 다른 설정 아니에요
나는 이것이 그 동안, 이상한 알고 viewDidLoad에 적절한 기본값을 설정했습니다. BOOL 할당 전에 이것이 바르로 BOOL (I는 속성에 변화)와 비교하여 일어나고 염두
UPDATE
베어링 하였다. 나는 그 이상한 행동을 저지르고있다. 더 많은 값은 그러나 ==0
:
있습니다 !=0
보다이기 때문에 쓰레기와
보기 컨트롤러가 느린로드되고 부모보기 컨트롤러에 의해 부하 사이에 보관됩니까? –
그것은 다시 만들어지는 부모이므로 계층 구조의 나머지 부분입니다. 나는 dealloc에 중단 점을 고착 시켰고 메모리 주소를 확인한 것과 같은 인스턴스가 아니라는 점에 긍정적입니다. 게다가 시각적 인 표시가 있습니다. D – BodaciousPie
Strange. 정적 BOOL로 선언됩니까? –