id 유형 및 응용 장면

760 단어
id 유형 및 응용 장면
1. NSObject를 사용하여 하위 클래스 객체에 액세스하는 방법
// id 
NSObject* obj = cat;
[(Cat*)obj run];

2. id 유형
id는 통용되는 대상 유형으로 어떤 종류에 속하는 대상을 저장할 수도 있고 만능 지침으로 이해할 수도 있다
id의 정의에 * 번호가 포함되어 있음을 주의하십시오.id 바늘은 os의 대상만 가리킬 수 있습니다.
id  
Typedef struct objc object{
Class isa; 
} *id;
 : , 。

iOS5 이후 instancetype 유형 instancetype과 id의 공통점
1) 동일점은 모두 방법의 반환 유형으로 할 수 있다
2)차이점
1. instancetype은 방법이 있는 클래스와 같은 유형의 대상을 되돌릴 수 있고 id는 미지의 유형의 대상만 되돌릴 수 있다.
2. instancetype은 반환값으로만 사용할 수 있고 id처럼 매개 변수로 할 수 없습니다.
3. id 유형 응용 장면
// 
Animal *animal = [Animal new];
// , 
Dog *dog = [Dog new];
// , 
Cat *cat = [Cat new];
// id 
id obj = cat; //id obj = dog;
[obj run];

좋은 웹페이지 즐겨찾기