|
아래에서의 this는 Form1을 지칭하는 것이 맞습니다.
네이버 지식검색에서 어떤분이 올리신 글을 따오자면
----
모든 객체는 this라는 포인터를 통해 자신의 주소에 접근한다. 특정 개체의 this 포인터는 그 자신의 일부는 아니다. 예컨데, 특정 개체의 sizeof 연산의 결과에는 this 포인터가 반영되진 않지만, this 포인터는(컴파일 타임에) 묵시적으로 객체에 대한 모든 비정적(non-static) 멤버 함수 호출의 첫번째 인자로 전달된다.
this 포인터는 특정 개체의 데이터 멤버와 멤버 함수 모두를 참조하기 위해 묵시적으로 사용된다. 이것은 명시적으로 사용될 수도 있다. this 포인터의 타입은 객체의 타입과 this가 사용되는 함수가 const로 선언되었는지 여부에 따라 다르다. Employee 클래스의 비상수(non-constant) 멤버 함수에서, this 포이터는 Employee * const 타입(Employee 객체를 가리키는 상수 포인터)을 갖는다. Employee 클래스의 상수 멤버 함수에서는 const Employee * const 타입(불변객체(constant object)에 대한 상수 포인터)을 갖는다.
---
this 포인터는 별거 아니면서도 상당히 중요한 내용입니다.
C++ 책의 this 포인터를 한번 읽어보시는 것이 좋으실거 같습니다.
하안인 님이 쓰신 글 :
: void __fastcall TForm1::FormCreate(TObject *Sender)
: {
: TListColumn *newColumn;
: TListItem *ListItem;
: TListView *ListView = new TListView(this);
:
: ListView->parent = this;
:
:
: TListView *ListView = new TListView(this); 와 ListView->parent = this;
: 에서의 this는 무엇을 의미하는 건가요..
:
: this란 클래스 자기 자신을 가리키는 포인터라고 하면..
: Form1의 멤머함수에서 this를 사용했으니 Form1을 의미하는 건가요....?
|