پارامترهای اختیاری در سی شارپ
در این مقاله قصد داریم در مورد پارامترهای اختیاری در سی شارپ صحبت کنیم. قبلا در مقاله متد چیست و پارامترچیست در مورد متدها و پارامترها صحبت کرده بودیم. اما هنگام تعریف متدها انواع مختلفی پارامتر را می توان تعریف کرد که یک نمونه از آنها پارامترهای اختیاری می باشد.
پارامترهای اختیاری در سی شارپ همانطور که از نام آن پیداست اختیاری می باشد به این معنی که در هنگام تعریف متد به صورت اختیاری تعریف می شوند و موقع فراخوانی متد می توان آن را مقداردهی کرد یا نکرد. بهتر است این موضوع را با یک مثال نمایش دهیم.
در مثال زیر متدی را با نام Method تعریف کرده ایم. این متد دارای دو پارامتر می باشد. پارامتر اول از نوع int با نام value و با مقدار پیش فرض ۱ و پارامتر دوم از نوع string با نام name و با مقدار پیش فرض AspCore.Ir. حال به فراخوانی های این متد در بدنه متد Main دقت نمایید. همانگونه که مشاهده می کنید در اولین فراخوانی هیچ آرگومانی ارسال نشده است. در دومین فراخوانی آرگون اول از نوع int با مقدار ۴ ارسال شده است و در فراخوانی های بعدی نیز سایر حالات را مشاهده می نمایید. در ادامه خروجی های این فراخوانی ها را مشاهده می کنید.
مشاهده می نمایید که در هر فراخوانی که آرگومانی ارسال شده است، در خروجی مقدار آرگومان جایگزین شده است و در هر فراخوانی که مقدار آرگومان خالی می باشد همان آرگومان پیش فرض در خروجی نمایش داده شده است.
در انتها باید دقت نمایید که این قابلیت یعنی پارامترهای اختیاری در سی شارپ از نسخه سی شارپ ۴ به بعد اضافه شده است و در سی شارپ های قدیمی تر مثل نسخه های ویژوال استودیو ۲۰۰۵ یا قدیمی تر چنین امکانی وجود ندارد.