오후 3:49 2008-09-30
Obj-C 간단한 C++ 비교 사용 법
조경민 bro@shinbiro.com neri.cafe24.com
============================================================
test.cpp
class MyObj : public NSObject
{
int i;
public:
MyObj* func1();
void func2( int a );
static int sum_Arg1 ( int a, int b );
}
MyObj* MyObj::func1()
{
return this;
}
void MyObj::func2( int a )
{
}
int MyObj::sum_Arg1 ( int a, int b )
{
return a + b;
}
MyObj* p = new MyObj;
p->func1();
p->func2(1);
int s = MyObj::sum_Arg1( 1, 2 );
-----------------------------------------------
test.m 파일
@interface MyObj : NSObject
{
int i;
}
@public
- (MyObj*) func1;
- (void) func2:(int)a;
+ (int) sum_Arg1:(int)a: Arg2:(int)b;
@end
@implementation MyObj
- (MyObj*) func1
{
return self;
}
- (void) func2:(int)a
{
}
+ (int) sum_Arg1:(int)a: Arg2:(int)b
{
return a + b;
}
@end
MyObj* p = [[MyObj alloc] init];
[p func1];
[p func2:1];
int s = [MyObj sum_Arg1: 1 : 2];
----------------------------------------------
간단 정리:
1. 멤버함수, 정적 멤버함수 표현
- 는 멤버함수
+ 는 정적멤버함수
2. 멤버함수 호출은 [obj method] 방식
3. 선언부 (@interface), 구현부 (@implementation)으로 나뉨
4. 기본적으로 MFC CObject 처럼 NSObject을 상속함
5. alloc/init과 new는 동일
이외에 추가 정리
6. 모든 멤버함수는 dynamic binding으로 모든 method 가 C++의 virtual임.
7. object-c에는 class variable이 없다. 그냥 전역 변수를 선언해야 한다.
'KB > iphone/mac' 카테고리의 다른 글
[iPhoneSDK] 버튼 클릭하기 (0) | 2008.09.30 |
---|---|
cocoa basic #1 (0) | 2008.09.30 |
cocoa å (0) | 2008.09.30 |
xcode 유용한 개발 단축키 (0) | 2008.09.29 |
맥 시디 부팅하기 (0) | 2008.09.22 |