iOS - 2년 후 참조 개수 보기
@interface People()
@property (nonatomic, retain) NSArray *arr;
@end
@implementation People
- (instancetype)init {
self = [super init];
if (self) {
self.arr = @[@"hello world"];
NSLog(@"%ld", [self.arr retainCount]);
}
return self;
}
@end
아니면 위의 코드, 우리는 약간의self 성립 내부의 코드를 아래의 코드로 변경1
_arr = @[@"hello world"];
NSLog(@"%ld", [_arr retainCount]);
2
_arr = @[@"hello world"];
NSLog(@"%ld", [_arr retainCount]);
3
self.arr = @[@"hello world"];
NSLog(@"%ld", [_arr retainCount]);
위에 정답 공개해 주세요. 2, 1, 1, 2.위의 답안은 처음에 나는 매우 이해할 수 없었다.아니면 채팅방의 한 사나이의 인내심 있는 설명으로 마음속의 많은 의혹을 풀었다.
여기에 설명을 드리겠습니다. @property에 대해 궁금한 것이 있다면, 제가 일찍이 쓴 글을 뒤적여 보겠습니다. 여기에Property에 대한 설명이 있습니다.자, 우리 원본 코드를 보자. 내가 여러분과 한 차례 분석할게.우선, 강조 사항:
대상이 alloc 방법을 조정하면 자동으로 자신의 인용 계수를 +1
구성원 변수 할당 값은 객체의 참조 계수에 영향을 주지 않습니다.
사실 여기서 @property에서 생성한setter 방법을 제시하면 여러분들은 활짝 밝아지는 느낌을 갖게 될 것입니다.- (void)setArr: (NSArray *)arr {
if(_arr != arr) {
[_arr release];
_arr = [arr retain];
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSON
JSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다.
그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다.
저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.
사실 여기서 @property에서 생성한setter 방법을 제시하면 여러분들은 활짝 밝아지는 느낌을 갖게 될 것입니다.
- (void)setArr: (NSArray *)arr {
if(_arr != arr) {
[_arr release];
_arr = [arr retain];
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.