توابع مجازی
توابع
مجازی يا Virtual
Functions در ارث بری توابع کاربرد
دارند که توضيح خواهم داد .
در هنگام تعريف يک تابع در يک کلاس شما می توانيد در ابتدای تعريف
تابع کلمه کليدی virtual رو برای مجازی کردن
تابع استفاده کنيد . مثال :
}class A
.
.
.
:public
;(virtual void
setage(int
age
.
.
.
}
نکته : کاربرد توابع مجازی مانند توابع حقيقی است و هيچ
فرقی ندارد ( در حالت عادی)
امااگر يک کلاس از اين کلاس شما مشتق شود و تابعی با همين نام اما به صورت
تابع غیر مجازی داشته باشد اتفاق زیر رخ می دهد :
اگر شئی از کلاس مشتق شده تعريف شود و تابع مشترک اين دو کلاس که در اولين
کلاس مجازی است فراخوانی شود : تابع
متعلق به کلاس مشتق شده اجرا خواهد شد .
این نوع توابع در مواردی کاربد دارد که شما تشخیص می
دهید که ممکن است در بعضی شرایط نیاز باشد که تابعی
که در کلاس پایه تعریف میکنید تغییر ساختار
موقتی داشته باشد برای یک کاربرد خاص.
بازگشت به فهرست
بازگشت به صفحه نخست