آموزش دلفی

لیست uses در دلفی

لیست uses در دلفی

لیست uses در دلفی شامل لیستی از یونیت هایی خواهد بود که یونیت فعلی به آنها رجوع می نمیاد

یک برنامه از نوع ویندوزی در دلفی ایجاد کنید
سپس از منوی دلفی

Project | View Source

انتخاب کرده و کد مبدا پروژه ایجاد شده را مشاهده کنید
برای مثال اگر به خط دوازدهم مربوط به یونیت پروژه ای زیر نگاه کنید

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 میباشد

  Unit1 in 'Unit1.pas' {Form1};

آیا متوجه ارتباط شده اید ؟
در حقیقت لیست 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
  Vcl.Forms,
  Unit1 in 'Unit1.pas' {Form1};

یونیت دوم

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

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

نکتـــــــــــــــه
در بعضی موارد دلفی به صورت خودکار اسمی یونیت ها را به لیست uses اضافه خواهد نمود
این عمل با انتخاب گزینه File | Use Unit ( از طریق منوی اصلی دلفی) انجام میشود
در رابطه با این قابلیت در ادامه توضیحات بیشتری ارائه خواهد شد
[adinserter block="1"]
5/5 - (2 امتیاز)

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

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

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