Nullable طريقة الحجج في C# [مكررة]
سؤال
تكرار السؤال
يمكنني أن أفعل هذا في c# for .Net 2.0?
public void myMethod(string astring, int? anint)
{
//some code in which I may have an int to work with
//or I may not...
}
إن لم يكن هناك شيء مماثل يمكنني فعله ؟
المحلول
نعم ، على افتراض إضافة الاقتباس عمدا و كنت حقا تعني:
public void myMethod(string astring, int? anint)
anint
الآن HasValue
مكان الإقامة.
نصائح أخرى
يعتمد على ما تريد تحقيقه.إذا كنت تريد أن تكون قادرة على إسقاط anint
المعلمة لديك لإنشاء الزائد:
public void myMethod(string astring, int anint)
{
}
public void myMethod(string astring)
{
myMethod(astring, 0); // or some other default value for anint
}
يمكنك القيام به الآن:
myMethod("boo"); // equivalent to myMethod("boo", 0);
myMethod("boo", 12);
إذا كنت ترغب في تمرير nullable int, حسنا, انظر الأجوبة الأخرى.;)
في C# 2.0 يمكنك القيام به ؛
public void myMethod(string astring, int? anint)
{
//some code in which I may have an int to work with
//or I may not...
}
و استدعاء الأسلوب مثل
myMethod("Hello", 3);
myMethod("Hello", null);
لا تنتمي إلى StackOverflow