델파이를 초보입니다.
제가 폼 없는 Unit에 코딩 하는걸 많이 썼는데요... 이게 메모리 상에 어떤 영향을 미치는지 궁금합니다.
이게 프로그램 실행시에 자동으로 메모리에 올라간다면 좀 문제가 있을것 같아서요.
MDI로 만든 프로그램에 서브폼 70-80에서 공통으로 사용하는 procedure라든가 각 폼에서 일어나는 Query문을 하나의 Unit에 몰아 넣어서 코딩을 합니다.
한 예를 들어보겠습니다.
//------- Form이 있는 Unit
interface
var
Form1: TForm1;
implementation
uses Unit1;
var
TestStr: String;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
TestStr := Test_String(TestStr);
end;
//--- 폼 없는 Unit
interface
functionTest_String(Str: String): String;
implementation
uses Main, DataModule;
function Test_String(Str: String): String;
begin
Result := Str + 'gogogo';
end;
이런식으로 작성한 procedure며 function이 상당합니다.
이 폼없는 Unit안의 procedure, function은 프로그램 시작과 동시에 모두 메모리 상에 올라가는지요.
어떻게 구현할지는 난감하지만 가능하다고 할때 단순히 저 기능들을 Class화 시킨다면 메모리쪽 상황이 달라질까요?
궁금하기만 합니다. 답변 부탁드리겠습니다.
|