مشاهده نسخه کامل
: توابع constructor و destructor
shahinfarasystem
06-10-2009, 10:47
سلام
توابع constructor و destructor چه توابعي هستند و هر كدام د ركجا كاربرد دارند؟
اگر لطف كنيد با مثال يه نمونه نشونم بديد ممنونتون مي شم؟
mamadfelfel1988
07-10-2009, 18:42
constructor در oop به عنوان سازنده استفاده ميشه
deconstructor هم براي زماني كه احتياج به اصلاح پيدا ميكنه
shahinfarasystem
07-10-2009, 19:33
constructor در oop به عنوان سازنده استفاده ميشه
deconstructor هم براي زماني كه احتياج به اصلاح پيدا ميكنه
ممكنه بيشتر توضيح بديد؟
سلام
تابع constructor اولین تابع یک کلاس است که اجرا خواهد شد و خودکار در طی عملیات نمونه سازی ان کلاس که معمولاً در زبانهای مختلف با فرمان new انجام میشود فراخوانی میشود و درست بعد از پر کردن اشاره گر کلاس (this در خانواده C و Me در خانواده VB) میتوان کدهای مورد نیاز خودمان را اجرا کنیم.
تعریف یک تابع سازنده میتواند چیزی شبیه این باشد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
خلاصه:
این تابع اولین تابع است که در زمان ساخت کلاس فقط و فقط و اجباراً یکبار اجرا میشود.
در این تابع میتوانید اشیا و مقادیر مورد نیاز برای کلاس را مقدار دهی کنید.
=====
تابع destructor بر عکس مورد قبلی است و تابعی است که قبل از پاک سازی کلاس از حافظه اجرا میشود.
تابع destructor در زبانهای برنامه نویسی و محیط های مختلف آن قطعیت constructor را ندارد.
یعنی شاید چند بار اجرا شود و برخی محیطها امکان اندکی هم دارد اصلاً اجرا نشود !
تعریف یک تابع خاتمه یا نابود کننده، میتواند چیزی شبیه این باشد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
البته لازم به ذکر است که زبانهای تحت دات نت ...
- معمولاً نیازی به کدنویسی نابود کننده خود کلاسها به صورت فوق نیست و مسئولیت پاک سازی با سرویس CLR "جمع آوری کننده حافظه هرز" است.
- نابود کننده خاص قویتری با اصول شی گرایی وجود دارد که با پیاده سازی واسط IDisposable قابل تعریف است.
خلاصه:
این تابع در زمان پاک شدن و نابود شدن کلاس فراخوانی میشود و میتوان در صورت لزوم منابع استفاده شده را آزادسازی کرد.
موفق باشید.
shahinfarasystem
09-10-2009, 21:55
بازم معرفت شما h2 جان
ممنونتم.... عالي بود
vBulletin , Copyright ©2000-2024, Jelsoft Enterprises Ltd.