Компьютерные книги
Главное меню
Главная Поиск по сайту Добавить материал О нас Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Языки программирования -> Ватсон К. -> "С#" -> 55

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 49 50 51 52 53 54 < 55 > 56 57 58 59 60 61 .. 404 >> Следующая


В заключение главы мы сосредоточимся на двух более сложных темах: на перегрузке функций и на делегатах. Перегрузка функций — это способ, позволяющий иметь несколько функций с одинаковым именем, но с отличающимися сигнатурами. Делегат — тип переменной, который допускает непрямое использование функции. Один и тот же делегат может быть использован для вызова любой функцин, имеющей указанную сигнатуру, что позволяет осуществлять выбор из нескольких различных функций в процессе выполнения.

Описание и использование функций

В данном разделе рассказывается, каким образом можно включать функции в состав приложений, а затем использовать (вызывать) их из кода. Сначала будут рассмотрены простые функции, не обменивающиеся данными с вызывающим их кодом, а затем мы перейдем к более сложному использованию функций.

Итак, давайте сразу начнем с примера.

Праитииун: описание и использование простой функции

1. Создайте новое консольное приложение с именем Ch06Ex0i В директории C:\BegCSharp\Chapter6.
Функции

107

2. Добавьте следующий код в ciassi.es: class Classl {

static void Write ()

{

Console.WriteLine('Text output from function.');

>

static void Main(string[] args)

1

Write 1);

}

3. Запустите программу:

L3

Ei CApttgCSb hdptcr&\rtiDGEKO I bia\C№buy' ?h0fi8iQL««

Jjent; fun, миг Fi'on ! uuuC j un . It'i'usi; ini kt у ta eftiitifiut*

J

Uisfii

3 U

2} A

Как это работает

Следующие четыре строки кода описывают простую функцию с именем write о:

static void Write()

{

Console.WriteLine("Text output from function.');

)

Код, содержащийся в данной функции, просто выводит некоторый текст в консольном окне. Однако это не столь важно, поскольку в настоящий момент нас в большей степени интересуют механизмы, лежащие а основе описания и использования функции.

В данном случае описание функции состоит из:

? Двух КЛЮЧеВЫХ СЛОВ: static И void

? Имени функции, за которым располагаются параметры: write о

? Участка выполняемого кода, заключенного в фигурные скобки

Код, который используется для описания функции write о, выглядит почти так же, как и код самого приложения:

stacic void Main(string!] args)

(

(

Это объясняется тем, что весь код, который мы создавали до сих пор (не считая описания типов), представляет собой часть некоторой функции. Эта функция — Main о — выполняет (как упоминалось в главе 3) функцию точки входа в консольное приложение. Когда запускается приложение, написанное на С#, то происходит вызов содержащейся в нем функции точки входа, а когда эта функция заканчивает свою работу, выполнение приложения прерывается. Любой выполняемый код, написанный на С#, должен иметь точку входа.
108

Глава 6

Единственное отличие между функцией Main!) и функцией write о (не считая тех строк кода, которые в них содержатся) заключается в том, что в круглых скобках, расположенных за именем функции Main, находится некоторый код. Этот код служит для задания параметров; к более подробному его обсуждению мы вернемся несколько позже.

Как уже упоминалось ранее, обе функции — и Main!), и write!) — описываются с использованием ключевых слов static (статический) и void (отсутствует). Ключевое слово static имеет отношение к понятиям объектно-ориентированного программирования, к его рассмотрению мы перейдем ниже. На данном этапе от вас требуется запомнить только то, что все функции, которые будут задействованы в приложениях данного раздела, обязательно должны использовать это ключевое слово.

Ключевое слово void, напротив, объяснить очень просто. Оно указывает, что функция не возвращает никакого значения. Далее в этой главе будет рассказано, что необходимо писать в тех случаях, когда у функции имеется возвращаемое значение.

Продолжая рассматривать наше приложение, мы обнаруживаем код, который осуществляет вызов функции:

Write!) ;

Он состоит нз нменн функции, за которым помещаются пустые круглые скобки. Когда выполнение программы достигнет этой точки, начнет выполняться код, содержащийся В функции Write!).

Обратите внимание, что использование круглых скобок как при описании функции, так и при ее вызове является обязательным. Можете попробовать их убрать — код не пройдет компиляцию.

Возвращаемые значения

Самый простой способ обмена данными с функциями — использование возвращаемого значения. Функции, в которых применяются возвращаемые значения, точно так же обладают численным значением, как и любые переменные, используемые прн вычислении выражений. Аналогично переменным возвращаемые значения обладают типом.

Например, можно описать функцию с именем getstringo, возвращаемое значение которой будет иметь тип string, и использовать ее в своей программе:

string = myString| myString " getStrlngOi

С другой стороны, можно описать функцию с именем getval!), которая будет возвращать значение тнпа double, и использовать ее в математическом выражении:

double myVal;

double multiplier “ S.3;

nyVal * getval() * multiplier;
Предыдущая << 1 .. 49 50 51 52 53 54 < 55 > 56 57 58 59 60 61 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.