|
Kompyuter tizimlari kafedrasi
|
bet | 94/154 | Sana | 08.01.2024 | Hajmi | 5,29 Mb. | | #131939 |
Bog'liq Majmuaint min = MinVal(1, 2.2); // Noto‘g‘ri!
params modifikatoridan chegara shartlariga rioya qilgan holda foydalanish kerak, chunki params tipidagi parametr istalgan miqdordagi argumentlarni qabul qilishi mumkin, hatto nolga teng bo‘lsa ham. Misol uchun, quyidagi kodda MinVal() metodini chaqirish C# sintaksisi nuqtayi nazaridan to‘g‘ri hisoblanadi.
min = MinVal(); // argument yo‘q
min = MinVal(3); // 1 ta argument
Shuning uchun MinVal() metodi ushbu elementga kirishdan oldin nums massivida kamida bitta element mavjudligini tekshiradi. Bunday tekshiruvsiz MinVal() metodini argumentlarsiz chaqirish istisnosiga olib keladi.
Metod ham oddiy parametrlarga, ham o‘zgaruvchan uzunlikdagi parametrga ega bo‘lishi mumkin. Masalan, quyida ShowArgs() metodi bitta string tipidagi parametrni va params turidagi parametr sifatida butun son massivini oladigan dastur keltirilgan.
using System;
namespace parametr
{
class MyClass
{
public void ShowArgs(string xabar, params int[] nums)
{
Console.Write(xabar +" ");
foreach (int i in nums)
Console.Write(i + " ");
Console.WriteLine();
}
}
class ParamsDemo2
{
static void Main()
{
MyClass ob = new MyClass();
ob.ShowArgs("Bu butun sonlar qatoridir: ", 1, 2, 3, 4, 5);
ob.ShowArgs("Bu esa ikkita butun son", 17, 20);
Console.ReadKey();
}
}
}
Bu dasturni ishga tushirish natijasi.
Bu butun sonlar qatoridir: 1 2 3 4 5
Bu esa ikkita butun son 17 20
Metod oddiy string turidagi parametrga, hamda params turidagi parametrga ega bo‘lgan hollarda, u ushbu metod uchun parametrlar ro‘yxatida oxirida ko‘rsatilgan. Lekin har qanday holatda, params turi parametri yagona bo‘lishi kerak.
15-ma’ruza. Qiymat turlari, havola turlar.
|
| |