سلام
نوشته شده توسط
Shervan360
... هر اینترفیسی که پیاده کردم جلوی نام یک کلاس پیاده کردمش ...
بله درست است.
برای پیاده سازی/implementation باید بعد نام class یا struct نام intreface آورده شود.
( البته سه مورد استثنا جهت تنبل بازی و راحتی کار برنامه نویسی داریم که ارتباطی به سوال فعلی شما ندارد. )
نوشته شده توسط
Shervan360
... این مثال داره اینترفیس رو برای یک تابع پیاده میکنه؟ ...
خیر در مثال شما هیچ پیاده سازی/implementation صورت نگرفته.
این کار در مثال شما نامش "شرط Generic ای" است.
دقت کنید، قبلش کلمه where هم آمده، یعنی "در صورتیکه که" ... "در شرایطی که" ...
در این تابع داریم "شرط" میگذاریم، دقت کنید:
میگوییم تابع FindMin ما فقط وقتی کار میکند که T حتما IComparable را پیاده سازی کرده باشد.
پیاده سازی انجام نداده ایم، گفته ایم T باید این کار را کرده باشد.
ما با T هایی کار میکنیم که این کار را کرده باشند.
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
نوشته شده توسط
Shervan360
... تابع CompareTo رو هم درنهایت ازش ...
استفاده کرده.
متغییر min از جنس T است
شرط کرده ایم که تابع ما وقتی کار میکند که جنس T واسط IComparable را پیاده سازی کرده باشد
پس متغییر min تابع CompareTo را خواهد داشت !
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
موفق باشید.