PDA

View Full Version : محدودیت تعریف متغیر و فضای حافظه



FirstLine
شنبه 19 اردیبهشت 1383, 08:31 صبح
با سلام
من برنامه ای نوشته ام که مثلا 30 تا فرم مختلف دارد و در هر فرم هم حدودا 10 متغیر Integer و حدودا 20 String بصورت عمومی در هر فرم تعریف شده است.
1- آیا تعریف متغیر در سرعت برنامه تاثیر دارد؟
2- مثلا برای مسیر فایل اجرایی بهتر است یک متغییر عمومی در کل برنامه تعریف کنم و در فرم اول آن را مقدار دهی و سپس از آن متغییر استفاده کنم و یا در هر زمان که به مسیر فایل اجرایی نیاز داشتم از دستور ExtractFilePath(Application.ExeName) استفاده کنم؟ کدام بهتر است؟
3- هر فرمی که باز میشود تعدادی متغییر دارد و پس از بسته شدن این فرم دیگر به این فرم و متغییرهای عمومی داخل فرم کاری ندارم, آیا با بستن فرم, مقدار فضایی که متغییرهای این فرم اشغال کرده اند, آزاد میشود؟
4- برای آزاد شدن مقدار فضای اشغالی حافظه توسط فرمها و متغییرهایی که به آنها نیاز نداریم چه باید کرد؟
با تشکر

amirrf
شنبه 19 اردیبهشت 1383, 12:57 عصر
سلام،

1. خیر
2. روش دوم
3. خیر
4. نمونه فرم را از بین ببرید (آزاد کنید). یا با فراخوانی Free یا در OnClose قرار دهید: Action := caFree

SReza1
شنبه 19 اردیبهشت 1383, 23:02 عصر
procedure TDM1.ShowForm(FormClass: TFormClass);
begin
With FormClass.Create(Self) do
Try
ShowModal;
Finally
Destroy;
End;
End;
این کد برای آزدا سازی و تخصیص حافظه!! فقط دقت کن چون دلفی در اول Project فرمها رو create میکنه اونا رو پاک کن