* typedef int integer
~~~~~~~ ~~~ ~~~~~~~
integer 라고 쓰여진 놈을 int로 생각하라~
* typedef struct _MyData MyData
~~~~~~~ ~~~~~~~~~~~~~~ ~~~~~~
MyData 라고 쓰여진 놈을 struct _MyData로 생각하라~
* typedef sturct _MyData * PMyData
~~~~~~~ ~~~~~~~~~~~~~~~~ ~~~~~~~
PMyData 라고 쓰여진 놈을 struct _MyDaa *로 생각하라~
%%
마지막 단어를 typedef 다음에 오는 단어부터 마지막 white space 전까지의 문장으로 인식하도록~ (?)
* typedef void (*FuncPtr)( param )
~~~~~~~ ~~~~ ~~~~~~~~~~~~~~~~
FuncPtr을 param 인자를 가지고 반환값이 void인 함수의 포인터로 생각하라~
선언
void testfunc( int data );
FuncPtr fp = testfunc;
호출
fp( 10 );
* typedef void (Class::*FuncPtr)( param )
~~~~~~~ ~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
FuncPtr을 param 인자를 가지고 반환값이 void인 Class 클래스 멤버 함수의 포인터로 생각하라
선언
void Class::test( int );
FuncPtr fp = &Class::test;
호출
Class sample;
(sample.*fp)( 10 );
~~~~~~~ ~~~ ~~~~~~~
integer 라고 쓰여진 놈을 int로 생각하라~
* typedef struct _MyData MyData
~~~~~~~ ~~~~~~~~~~~~~~ ~~~~~~
MyData 라고 쓰여진 놈을 struct _MyData로 생각하라~
* typedef sturct _MyData * PMyData
~~~~~~~ ~~~~~~~~~~~~~~~~ ~~~~~~~
PMyData 라고 쓰여진 놈을 struct _MyDaa *로 생각하라~
%%
마지막 단어를 typedef 다음에 오는 단어부터 마지막 white space 전까지의 문장으로 인식하도록~ (?)
* typedef void (*FuncPtr)( param )
~~~~~~~ ~~~~ ~~~~~~~~~~~~~~~~
FuncPtr을 param 인자를 가지고 반환값이 void인 함수의 포인터로 생각하라~
선언
void testfunc( int data );
FuncPtr fp = testfunc;
호출
fp( 10 );
* typedef void (Class::*FuncPtr)( param )
~~~~~~~ ~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
FuncPtr을 param 인자를 가지고 반환값이 void인 Class 클래스 멤버 함수의 포인터로 생각하라
선언
void Class::test( int );
FuncPtr fp = &Class::test;
호출
Class sample;
(sample.*fp)( 10 );
'프로그래밍 > 언어_스크립트' 카테고리의 다른 글
C++ 에서 구조체 (0) | 2010.09.27 |
---|---|
C++ 에서 레퍼런스 (0) | 2010.09.27 |
[Study Effective C++] new로 생성한 객체를 스마트 포인터에 넣는 코드는 별도의 한 문장으로~ (0) | 2008.02.13 |
[Study Effective C++] 자원 관리는 객체로~ (0) | 2008.02.13 |
[Study Effective C++] 대입 연산자의 오버로딩에서 빠지지 말아야 할 것! (0) | 2008.02.12 |