|
음... 아래 소스는 프로퍼티라는것입니다.
쉽게 설명하면..
class 내부에서 어떤 내용을 읽어오거나 저장할때
그냥 어떤 변수에서 읽어오거나 저장하는것처럼 만든것을 프로퍼티라고 합니다.
프로퍼티는 class내부의 인자를 접근을 제한하기 위해서도 쓰이고...
읽거나 , 쓰거나 할때 어떤 동작을 수행하도록 하기위해서도 쓰입니다.
프로퍼티는 OOP 언어에 기본적인것입니다.
자바 , C# , C++ , Object Pascal 등 oop언어에는 다 있죠
언어마다 문법은 좀 다르지만....
//-----------------------------------------------------
먼저 OwnerThread 는 class 밖에서 볼때 DWORD형식의 값이구요
DWORD dwTred = Obj->OwnerThread ;
위와 같이 읽어오면
Obj의 FOwnerThread()함수가 호출되어 결과값을 줍니다.
Obj->OwnerThread = 1 ;
위와같이 하면
Obj 의 FOwnerThread( 1 ) 이렇게 호출되어 저장합니다.
//-----------------------------------------------------
그런데 두번째 Running은 bool형인데..
read만 있고 write는 없죠
이것은 Running값은 읽기는 가능하지만 쓰기(저장또는 설정)는 불가능하도록 만든것입니다.
어떤 언어를 사용하든 OOP(객체지향프로그래밍)은 공부하시는것이 좋을것 입니다.
그럼..
버드 님이 쓰신 글 :
: 빌더로 짠 소스를 보다가 이런 생소한 문법이 있어서 질문 드립니다.
:
: 클래스에 변수가 이렇게 선언되어 있더군요.
:
: __property DWORD OwnerThread = { read=FOwnerThread, write=FOwnerThread };
: __property bool Running = { read=GetRunning };
:
: read write 다음에 오는 것들은 멤버 변수, 멤버 함수더라구요.
: 여기서 read write 가 어떤 작용을 한느지 궁금해서요 혹시 아시는 분 있으시면 답글 주시면 고맙겠네요.
|