PDA

View Full Version : پارامتر اختیاری در سی شارپ



morteza_bn
یک شنبه 02 خرداد 1389, 18:43 عصر
سلام دوستان
پارامترهای اختیاری توابع و مقادیر پیش فرض در سی شارپ چطور تعریف میشن؟

mehdi.mousavi
یک شنبه 02 خرداد 1389, 18:50 عصر
سلام دوستان
پارامترهای اختیاری توابع و مقادیر پیش فرض در سی شارپ چطور تعریف میشن؟

سلام.

به "برنامه نویس" خوش آمدید.
لطفا قبل از ارسال پست بعدی، قوانین فعالیت در این سایت (http://barnamenevis.org/forum/showthread.php?t=51814) را مطالعه نمایید.

اما پاسخ به سوال شما، این قابلیت متعلق به C#‎ 4.0 هستش... با این توضیح میتونید به این شکل عمل کنید:

public class MyNewClass
{
public MyNewClass(int param1, int param2 = 4)
{
}
}


اینجا من توی Constrcutor، پارامتر دوم رو Optional تعریف کردم، یعنی اگر مقدار param2 رو به ctor ندم، بطور پیش فرض 4 در نظر گرفته خواهد شد. بدین ترتیب:

MyNewClass c1 = new MyNewClass(2);
MyNewClass c2 = new MyNewClass(2, 5);


در خط اول، c1 با param1 دو و param2 ی 4 ایجاد میشه در حالیکه در خط دوم، c2 با param1 دو و param2 ی 5 ایجاد میشه.

بخاطر داشته باشید که پارامترهای Optional باید همواره بعد از پارامترهای Mandatory قرار بگیرن و میتونید به تعداد دلخواه (و با Data Type های مورد نظر) هر چی پارامتر خواستید به متود یا ctor کلاس اضافه کنید.

موفق باشید.

morteza_bn
یک شنبه 02 خرداد 1389, 18:53 عصر
خیلی ممنون از پاسخ سریعتون فقط می خواستم بدونم در سی شارپ 2005 راهی نداره؟

mehdi.mousavi
یک شنبه 02 خرداد 1389, 19:01 عصر
خیلی ممنون از پاسخ سریعتون فقط می خواستم بدونم در سی شارپ 2005 راهی نداره؟

خیر. Visual Studio 2005 بر خلاف Visual Studio 2010،
Multitarget نیست و نمیتونه از .NET Framework 4.0 پشتیبانی کنه.

Saeed.Masoumi
دوشنبه 03 خرداد 1389, 09:48 صبح
سلام دوستان
پارامترهای اختیاری توابع و مقادیر پیش فرض در سی شارپ چطور تعریف میشن؟
سلام
یک سرج و این جواب (http://barnamenevis.org/forum/showthread.php?t=209710)