아이폰 개발팁 - 문자열 이름으로 generic하게 함수 호출하기

스크립트 언어처럼 문자열로 함수 호출이 가능합니다.
다양하고 편리하게 활용할 수 있겠죠~
이 코코아 동네에는 참 신기하게 많지만;;
편하고 개념있게(ㅋㅋ) 코딩을 하려면 일단 selector와 delegate에 친해져야 될 거 같아요~

일단 간단한 샘플 코드.. 편의상 함수들은 static으로 정의했습니다.

// 어떤 작업들을 수행하는 handler를 작성했다고 치고..

@interface HandlerClass : NSObject {}


+(void)TestFunction;

+(void)Move;

+(void)Attack;


@end



// 어딘가에서 호출할때.. 문자열로 selector를 구해서 호출하면 됩니다.

NSString* selectorName = @"TestFunction";


SEL s = NSSelectorFromString(selectorName);

if (s)

{

return [HandlerClass performSelector:s];

}




혹시 파라미터를 같이 넘길려면 아래 함수를 사용하면 됩니다. NSObject에 있어요~

- (id)performSelector:(SEL)aSelector withObject:(id)object;


이런건 c++에 비해서 참 많이~~ 좋네요 :>


by 쉬귀 | 2010/11/14 22:56 | 개발 | 트랙백 | 덧글(1)

트랙백 주소 : http://suigui.egloos.com/tb/3062567
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
Commented by 제갈식 at 2013/05/16 12:44
내용이 좋아서 좀 퍼갑니다.

잘 읽었습니다.

http://cafe.naver.com/iphonediy/

:         :

:

비공개 덧글

◀ 이전 페이지 다음 페이지 ▶