Основы C#. Урок 25. Передача параметров переменой длины
В функцию можно передавать заранее неизвестное число параметров.
Например, функция может складывать некоторое заранее неизвестное
количество чисел и возвращать их сумму.
Вот конкретный пример реализации такой функции:
using System;
class MyClass{
public static int Sum(params int[] args)
{
int res=0;
for(int i=0; i<args.GetLength(0); i++){
res+=args[i];
}
return res;
}
}
namespace test
{
class Test
{
public static void Main()
{
System.Console.WriteLine(MyClass.Sum(1, 3));
System.Console.WriteLine(MyClass.Sum(12));
System.Console.WriteLine(MyClass.Sum(-1, 9, 2));
}
}
}
Здесь в классе MyClass мы объявляем статческую фунцкию Sum, в которую
мы можем передавать переменное число параметров. Для этого в круглых
скобках после имени функции мы пишем конструкцию
...
public static int Sum(params int[] args)
...
Синтаксис у нее такой - сначала пишем ключевое слово params, затем -
тип параметров (int в данном случае), после которого ставим пустые
квадратные скобки и в конце этой конструкции пишем произвольное имя
параметра (в нашем примере он назван args).
В классе test мы испытываем наш класс MyClass, а именно, вызываем
функцию Sum с разным числом параметров. Все работает как надо и наша
программа покажет на экране 4, 12 и 10.
|