Основы 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. |