|
void __fastcall TForm2::Destroy(TObject *sender)
{
Form2 = NULL; <== 넣으시면 됩니다.
}
Jazzy~♪♩ 님이 쓰신 글 :
:
: 버튼을 누르면 폼을 동적으로 생성한다고 하였을 경우에,
:
: 생성된 폼이 닫힐때(OnClose) Action = caFree 로 하면 폼이
:
: 할당받은 메모리가 해제된다고 도움말에서 보았습니다.
:
: 그런데 막상 테스트를 해 보면, 즉 작업관리자를 띄워놓고
:
: 동적으로 폼을 10개정도 띄웠다가 하나씩 차례로 지우면 메모리가
:
: 늘었다가 줄어들어야 하는데 줄어들지가 않네요..
:
: 그래서 다시 10개정도 띄우면 또 메모리가 늘어납니다 ...
:
: 어찌된 일인지...
:
:
: 반드시 동적으로 생성하였다면 delete로 삭제해주어야만 하는 건지요?
:
: void __fastcall TForm1::btNewClick(TObject *sender)
: {
: TForm2 *frmChat = new TForm2(this);
: myList->Add(frmChat);
: }
:
: 다른 곳에서
: TForm2 *pfrmTemp;
: pfrmTemp = (TForm2 *)myList->Items[0];
: delete chatForm;
:
: 이런식으로 리스트에다가 포인터 값을 넣어둔 후에 delete 하는 방식 말고는
:
: 방법이 없는것인지 궁금합니다.
:
:
: ps: 계속 질문만하는듯한데, 그래도 궁금하니 어쩔수 없어서 ㅡㅡ;;
:
: 어서 실력을 쌓아서 답변도 하고 그러겠습니다 ^^;;
:
:
|