-(BOOL) isKindOfClass: classObj 이 객체가 ClassObj의 멤버이거나 상속을 받은 하위클래스인지? -(BOOL) isMemberOfClass: classObj 이 객체가 classObj의 멤버인지 -(BOOL) respondsToSelector: selector 이 객체가 selector란 이름의 메소드를 가지고 있는지? +(BOOL) instancesRespondToSelector: selector 이 클래스로 만들어진 객체가 지정된 셀렉터에 반응할 능력이 있는지? -(id) performSelector: selector 객체의 지정된 셀렉터를 실행한다.
#import #import "Fraction.h"#import "Complex.h" int main( int argc, const char *argv[] ) { // create a new instance Fraction *frac = [[Fraction alloc] initWithNumerator: 1 denominator: 10]; Complex *comp = [[Complex alloc] initWithReal: 10 andImaginary: 15]; id number; // print fraction number = frac; printf( "The fraction is: " ); [number print]; printf( "\n" ); // print complex number = comp; ..
#import 대 #include: 위의 hello world 예제에서 눈치챘겠지만, 파일을 포함할 때 #import를 사용한다. #import는 gcc 컴파일러가 지원한다. 다만 #include를 더 선호하기 때문에 덜 사용되게 될 뿐이다. #import는 사용자가 만든 .h파일의 위와 아래에 #ifndef #define #endif 블럭을 붙이는 것과 같은 일을 한다. 이 블럭을 붙이는 건 정말 멍청한 짓이라고 생각하고, 아마 다른 모든 개발자들도 동의할 것이다. 따라서 그냥 #import를 사용하면 된다. 걱정할 필요도 없고, gcc에서 #import를 제거한다고 해도, 다른 오브젝티브-C 개발자들이 그런 일이 생기지 못하게 할 것이다. 공식적으로 애플에서 #import를 자신들의 코드에 사용하니,..
- Total
- Today
- Yesterday