오후 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

+ Recent posts