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

کلمات کلیدی Is و As در پاسکال شی‌گرا

کلمات کلیدی Is و As در پاسکال شی‌گرا

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

if MyPeykan is TPeyKan then...

عملگر is یک مقدار بولی را باز میگرداند
در صورتی که متغییر مربوط از نوع کلاس موردنظر باشد
عملگر is مقدار Then و در غیر این صورت مقدار False رباز میگرداند
هم چنین اگر نوع کلاس موردنظر شما جد متغیر باشد
عملگر is مقدار True را باز میگرداند.

if MyPeykan is TCar then ...
نکـــــــــــــــــــــــــته
با توجه به این که تمامی کلاس‌ها از TObject منشعب میشوند
لذا عبارت زیر همیشه دارای نتیجه True خواهد بود
if anyClass is TObject then ...

از عملگر as برای تبدیل اشاره گر به نوع کلاس خاص استفاده می‌شود

with MyPeykan as TPeKan do
 StopEngine ;

معمولا در تصمیم گیری ها از عملگر as به همراه عملگر with استفاده خواهید کرد
در مثال قبلی متغیر MyPekan اشاره گری است که میتواند نمونه ای از کلاس TCar  و TPeykan یا هر کلاس دیگری باشد
از عملگر as برای تبدیل اشاره گر به نوعTPeykan و سپس فراخوانی متد StopEngine استفاده شده است
در صورتی که متغیر MyPeykan نمونه ای از کلاس TPeykan  (با یکی از اجداد آن) نباشد
عمل تبدیل نوع شکست مواجه شده و متد StopEngine فراخوانی نخواهد شد
در صورتی که متغییر MyPeykan اشاره گری به نسلی ازکلاس TPeykan باشد
عمل تبدیل نوع با موفقیت صورت گرفته و متد StopEngine فراخوانی خواهد شد

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

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

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

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