آموزش پاسکال شی‌گرا

لیست uses در پاسکال شی‌گرا

لیست uses در پاسکال شی‌گرا

لیست uses شامل لیستی از یونت‌های خواهد بود که یونت فعلی به آن‌ها رجوع میکند
برای مثال اگر به خط دوازدهم به یونیت پروژه زیر توجه کنید

program Project1;

uses
  Vcl.Forms,
  Unit1 in 'Unit1.pas' {Form1};

{$R *.res}

begin
  Application.Initialize;
  Application.MainFormOnTaskbar := True;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.

عبارت زیر را مشاهده خواهید کرد

  Application.CreateForm(TForm1, Form1);

این کد شامل اطلاعاتی است که درون فرم‌های دیگر قرار دارد و در این یونیت وجود ندارد
پروسیجری که به وسیله Application.CreateForm مشخص شده است
درون یونیت Forms.pas قرار دارد
هم چنین شناسه‌های TForm1 و Form1 درون یونیت فرم اصلی برنامه قرار دارند که نام آن Unit1.pas است
آیا متوجه ارتباط شده‌اید؟ در حقیقت لیست uses به دلفی می گوییدکه در کجا به دنبال اطلاعات افزوده‌ای بگردد که برای کامپایل شدن این یونیت مورد نیاز هستند
حال مجددا نگاهی به لیست uses می‌اندازیم

uses
  Vcl.Forms,
  Unit1 in 'Unit1.pas' {Form1};

توجه داشته باشید که لیست uses فوق شامل نام دو یونیت است که عبارتند از :Forms و Unit1
شاید مثال خوبی را مطرح نکرده باشم
چرا دومین یونیت این لیست شامل متن افزوده‌ای است که معمولا درون لیست uses یافت نمیشود

  Unit1 in 'Unit1.pas' {Form1};

متن فوق درون یونیت پروژه مورد استفاده قرار میگیرد و فرمی را مشخص میکند که شامل یونیت است
توجه داشته باشید که عبارت Form1 که درون دو علامت { } قرار داده شده است
به عنوان توضیحات درنظر گرفته میشود و تاثیری در روند کامپایل نخواهد داشت
در رابطه با توضیحات یا Comment در ادامه توضیحات بیشتری ارایه خواهد شد
در هنگام ایجاد لیست uses رعایت دو قانون الزامی است

1 – هر یونیت درون لیست باید با علامت کاما    ,   از دیگر یونیت‌ها جدا شود
2 – در انتهای لیست uses ذکر علامت سیمیکالن  ;   الزامی است

لازم به توضیح نیست که لیست uses شامل اسامی یونیت‌های معتبر باشد
هم چنین نحوه سازمان‌دهی و ترتیب ذکر اسامی یونیت‌ها در لیست uses تفاوتی ایجاد نمیکند
برای مثال هر دو لیست uses زیر از نظر کامپایلر با یکدیگر برابر هستند

uses
  Vcl.Forms,
  Unit1 in 'Unit1.pas' {Form1};

uses زیر وبالا ازنظر کامپایلر با یکدیگر برابر هستند

uses  Vcl.Forms,  Unit1 in 'Unit1.pas' {Form1};

یک یونیت میتواند شامل چندین لیست uses باشد
و نیازی نیست که تمامی یونیت‌های موردنیاز را درون یک لیست uses قرار دهید

نکـــــــــــــــته
در بعضی موارد دلفی به صورت خودکار اسامی یونیت‌ها را به لیست uses اضافه خواهد کرد
این عمل با انتخاب گزینه File>Unit-Delphi از طریق منوی اصلی دلفی انجام میشود
در رابطه با این قابلیت در ادامه توضیحات بیشتری ارایه خواهد شد

 

[adinserter block="1"]
5/5 - (1 امتیاز)

نوشته های مشابه

دیدگاهتان را بنویسید

دکمه بازگشت به بالا