برنامه نویسی

کلمه کلیدی params – انجمن DEV

params کلمه کلیدی – قبلاً در نسخه 12 سی شارپ معرفی شده بود، زمانی که params فقط آرایه ما می توانیم در برابر نوع و در نسخه 13 استفاده کنیم params حرقندی مجموعه را می توان در رابطه با نوع استفاده کرد، یعنی هر چیزی IEnumerable او می تواند آن را به ورثه خود واگذار کند.
params سوزی ناگهانی متغیر تعداد (هر مقدار)، به شما امکان می دهد آرگومان ها را به متد ارسال کنید. این بدان معنی است که شما می توانید یک تابع را با هر تعداد آرگومان از جمله صفر فراخوانی کنید. این کلمه کلیدی به کامپایلر می‌گوید که آرگومان‌های ورودی را به‌عنوان یک کل ببیند، نه به‌عنوان اشیاء منفرد مجموعه به معنی در نظر گرفتن به عنوان
تا نسخه 11 سی شارپ، اگر بخواهیم یک آرایه (یا هر مجموعه ای) را به یک متد ارسال کنیم، فقط Print(nums); یا Print(new int[] {1,2,3}); باید می نوشتیم، یعنی ابتدا مجموعه را مقداردهی اولیه می کردیم.

مثال:

var nums = new int[] { 1, 2, 3 };     <-- etibor qiling

Print(nums);                          <-- etibor qiling

void Print(int[] array)
{
    foreach(var item in array)
        Console.Write($"{item} ");
}
// output -> 1 2 3
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

params و نیازی به این کار نیست

مثال:

Print(1, 2, 3);                       <-- etibor qiling

void Print(params int[] array)
{
    foreach(var item in array)
        Console.Write($"{item} ");
}
// output -> 1 2 3
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

و این کلمه کلیدی نه تنها با آرایه ها، بلکه با هر یک است IEnumerable او می تواند آن را به ورثه خود واگذار کند.

مثال:

Print(1, 2, 3);                           <-- etibor qiling

void Print(params List list)         <-- etibor qiling
{
    foreach(var item in list)
        Console.Write($"{item} ");
}
// output -> 1 2 3
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

Params تنها با استفاده از، می توانید ترکیبات مختلفی با انواع دیگر بسازید params باید آخرین آرگومان متد باشد.

مثال:

PrintMessageAndNumbers("uchta son yubordim: ", 1,2,3);
void PrintMessageAndNumbers(string message, params int[] numbers)
{
    Console.WriteLine(message);
    foreach (int number in numbers)
    {
        Console.Write($"{number} ");
    }
}
// output -> uchta son yubordim: 1 2 3
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

این و بسیاری از ترکیبات مشابه امکان پذیر است.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا