|
한가지 아는 부분 있길래 씁니다.
아래 코드 중
TButton *C = new TButton(*B); //not allowed!!
는 다음과 같이 쓰면 가능합니다.
TButton *C = new TButton(B);
VCL은 선언 및 연결에서 반드시 포인터를 사용하도록 되어있지요.
물론 화면상에 나타나게 하려면 별도로 Parent를 지정해야 합니다.
다 아는 얘기시라구요.. -_-
그래도 또 하나..
위의 코드에서
C->Parent = B
라고 하면 C는 B를 따라다닙니다.
그냥 재미죠..
백수 님이 쓰신 글 :
: 안녕하세요?
: 오랜말에 글을 올려보는군요.
: 항상 자주 오지만 오늘 글을 올립니다.
: 씨++ 빌더의 사용자 가이드를 읽고 궁금해진것이 생겼습니다.
: 우선 아래의 소스코드를 보아주세요
:
: TButton *B = new TButton(ownerCtrl);
: TButton *C = new TButton(*B); //not allowed!!
:
: 위와 같은 구문은 VCL-style 에서는 허락되지 않는다고
: 나왔습니다.
: 저도 VCL을 공부하고 있지만 왜 저위에것이 허락되지 않는지
: 궁금합니다.
:
: 또한가지 이것은 C++에서입니다.
: MyClass *p = new MyClass;
: MyClass *q = new MyClass;
: *p = *q;
:
: 위의 할당이 적법한것이 알고싶어요.
: 그리고 만약 적법하다면 가상생성자는 어떻게 생성되는지도
: 알고싶습니다.
:
: 그럼 답변을 애타게 기다리며,, 글을 올립니다
임프님 다시한번 올립니다.
위의 TButton *C = new TButton(*B); //not allowed!!
이것의 형태가 왜 허락이 되지 않은지 가르쳐주세요.
요즘 너무 힘듭니다. 학교에 들어가긴했지만, 궁금한것이
있어도 가르쳐주는 사람이 없어서 무척실망입니다..
교수님에게 편지를 보냈지만, 답장도 없네요.
부디 임프님만은 절 실망시켜주지 마세요..
|