الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ما البديل لل Optional Parameters ؟

مغلق
بدأه stars في 3 أبريل 2006 · 3 رد · 823 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

hello all,

how can i write optional parameter for a method as same as vb.net

thnaks.

#2

يجب ان تستخد overload

فتقوم بتعريف اكثر من method بنفس الاسم ولكن كل method تختلف في المتغيرات التي تاخذها

#3

طريقة ال overload غير فعالة ... وستؤدي الى زيادة في الكود

الحل هو استخدام params

مثال 1:

public static void UseParams(params int[] list) 
{
      for ( int i = 0; i < list.Length; i++ )
         Console.WriteLine(list);
}

مثال 2:

public static void UseParams2(params object[] list) 
   {
      for ( int i = 0; i < list.Length; i++ )
         Console.WriteLine(list);
}

استخدامها :

public static void Main() 
{
      UseParams(1, 2, 3);
      UseParams2(1, 'a', "test"); 

      int[] myarray = new int[3] {10,11,12};
      UseParams(myarray);
}

تم تعديل هذه المشاركة بواسطة baha_ashour في 3 أبريل 2006 في 17:28

#4

طبعا زى ما الاخوة قالوا ولكن الحل الافضل هو أستخدام الparams modifier زى ما قال الاخ بهاء

وأيضا عند أستخدامها لازم يكون أخر parameter للدالة كما موضح

public void print(string meg , iparams int [] array)
{
.............
}

يستخدم ذلك الmodifier فى حالة الOne dimension or jagged array وماينفعش مع الالل

two dimension

params int[][] array; // ture
params int[] array   // true
params int[,] array;  //Compile Error

وأيضا لا يستخدم مع الref and out modifiers

Muhammad Allam

Computer Science

@Resource(MappedURL="My Blog" )

هذا الموضوع مغلق.

مواضيع مشابهة