|
|||
Пример функции, которая не возвращает значение
Функция являет собой небольшую подпрограмму. Если просто программа - это решение какой-то прикладной задачи, то функция – это тоже решение, только уже в рамках программы и, соответственно, она выполняет задачу «попроще». Функции позволяют уменьшить размер программы за счет того, что не нужно повторно писать какой-то фрагмент кода - мы просто вызываем сколько угодно и где нужно объявленную функцию. Функции в Си-шарп также называют методами. Между этими двумя понятиями разница небольшая, и тут мы будем использовать термин функция. До этого, мы весь код писали в функции main. Функция main является главной функцией приложения и точкой входа программы. Любая функция в Си-шарп может быть объявлена только в рамках класса, так как C# - полностью объектно-ориентированный язык программирования (ООП). Объявление пользовательской функции внутри другой функции (например main) недопустимо. Объявление функции имеет следующую структуру: [модификатор доступа] [тип возвращаемого значения] [имя функции] ([аргументы]) Между модификатором и типом может стоять ключевое слово static, что означает, что функция будет статичной. Подробно говорить о статичных функциях и переменных мы будем в отдельном уроке. Скажу только, что из статичной функции можно вызывать другие функции, если они тоже статичные. Главная функция main – всегда static, поэтому все функции в этом уроке мы будем объявлять также статичными. Функция может возвращать значение или не возвращать. Если функция, например, возвращает целое число, то нужно указать тип int. Если функция не возвращает никакого значения, то для этого используется ключевое слово void. Функции, которые не возвращают значение, еще называют процедурами. Называть функции стоит так, чтобы имя отображало суть функции. Используйте глаголы или словосочетания с глаголами. Примеры: GetAge(), Sort(), SetVisibility(). Аргументы – это те данные, которые необходимы для выполнения функции. Аргументы записываются в формате [тип] [идентификатор]. Если аргументов несколько, они отделяются запятой. Аргументы могут отсутствовать. Первая строка функции, где указываются тип, имя, аргументы и т.д. называется заголовком функции. Итак, хватит теории, переходим к практике. Пример функции, которая не возвращает значение Напишем простую функцию, которая будет заменять в массиве строк указанное имя на другое. Данная функция будет принимать три аргумента: массив строк, имя, которое необходимо заменить и новое имя. Так как функция не будет возвращать значение, указываем тип void перед именем функции.
public static void ReplaceName(string[] names, string name, string newName)
Функция написана, и теперь используем её:
class Program После вызова функции два раза в этой программе, массив будет выглядеть так: "Sergey", "Maxim", " Nikolay ", "Oleg", " Nikolay ", " Vladimir ", "Sergey".
Напишем функцию, которая будет находить максимальное число в массиве. Аргумент у этой функции будет один – массив целых чисел. Тип возвращаемого значения – целое число int.
public static int GetMax(int[] array)
Оператор return должен быть обязательно в функции, которая возвращает значение. Используем нашу функцию:
class Program Оператор return Когда встречается этот оператор, происходит выход из функции и код ниже (если он есть) выполняться не будет (например, в функцию передан такой аргумент, при котором нет смысла выполнять функцию). Он похож на оператор break, который используется для выхода из циклов. Этот оператор также можно использовать и в функциях, которые не возвращают значение. Оператор return допустимо использовать несколько раз в функции, но этого делать не рекомендуется.
|
|||
|