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

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 56 57 58 59 60 61 < 62 > 63 64 65 66 67 68 .. 404 >> Следующая


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

Конечно, такая простота в действительности делает программу менее понятной. Явное указание параметров позволяет увидеть, что именно подвергается изменениям, даже мельком взглянув на функцию. Если встречается вызов функции, имеющий вид myFunctionfvaii, out vai2), то сразу становится ясно, что следует обратить самое пристальное внимание на переменные vail и vai2 и что переменной vai2 по окончании выполнения функции будет присвоено новое значение, И наоборот, если у этой функции не имеется никаких параметров, то мы не сможем сделать предположения относительно того, над какими данными она выполняет манипуляции.

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

Итак, оба способа обмена данными можно использовать с равным успехом. В большинстве случаев мы будем настаивать на применении параметров вместо глобальных данных, однако существуют отдельные ситуации, когда более подходящим может оказаться использование именно глобальных данных; и уж, во всяком случае, такой способ не является ошибкой.

Функция Main()

Теперь, когда вы познакомились почти со всеми простыми способами, применяемыми для создания и использования функций, давайте вернемся назад и более подробно рассмотрим функцию Mainf).

Как было сказано ранее, функция Main о является точкой входа в приложение на C# и выполнение этой функции охватывает выполнение приложения. У этой функции имеется параметр — string!] args, однако до сих пор мы его не описывали. В данном разделе вы познакомитесь с этим параметром и узнаете, каким образом его можно применять.

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

? static void MainO

? static void Main(stringll args)
124

Глава 6

? static int Mainl)

? static int Main(etring[] args)

При желании аргумент args можно опускать,

Причина, по которой мы до сих пор пользовались вариантом с этим аргументом,— в том, что такая версия генерируется автоматически при создании консольного приложения в VS.

Третья и четвертая версии сигнатуры, приведенные выше, возвращают значение типа int, которое может быть использовано для указания на то, каким образом завершилась выполнение приложения, и которое часто используется для определения ошибки (хотя это в любом случае является обязательным). Обычно, возвращаемое значение равно О, что означает “нормальное' окончание (т. е. приложение закончило свою работу и может быть завершено в безопасном режиме).

Параметр args функции Mein о представляет собой метод, позволяющий приложению получать извне информацию, задаваемую в процессе его выполнения. Эта информация принимает форму параметров командной строки.

Параметры командной строки вам уже наверняка встречались. Когда производится запуск приложения из командной строки, то прн этом очень часто имеется возможность непосредственно задать некоторую информацию, например, имя файла, загрузка которого требуется для выполнения приложения. В качестве примера давайте рассмотрим Windows-прнложение Notepad. Запустить его можно, просто набрав notepad — либо в окне командного приглашения, либо в окне, которое появляется прн выборе опции Run (Выполнить) из меню Start (Пуск). Однако в этих же окнах мы можем набрать нечто вроде: notepad “myfile.txt”, В результате Notepad либо загрузит файл myfile.txt, либо, если такого файла не существует, предложит его создать. В данном случае 'myfile.txt* является аргументом командной строки. Мы можем сами написать консольное приложение, которое будет работать аналогичным образом, использовав параметр arga.

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

Давайте рассмотрим пример выполнения таких действий.

1. Создайте новое консольное приложение с именем ch06Ex04

в директории C:\BegCSharp\Chapter6.

2. Добавьте следующий код в classl.cs:

class Claasl {

static void Main(string[] args)

Console.WriteLine ('{О) command line arguments were specified:* args. Length.); foreach (string arg In args)

Console.WriteLine(arg)j
Функции

125

Cft№fk?M ¦Ppot-Tly Г-.^гп

.............- ' х У ‘

2i Сошжж Рго(Ч1би CaAMjWr. Prccwtw» fr*J * СчЬчррт?

J.; hitoi |чм(ЧТ) |j|-

ь-tt» t& ЙЙЗДП5 №

ЙМ» *iP.«T Drtuj^ ^
Предыдущая << 1 .. 56 57 58 59 60 61 < 62 > 63 64 65 66 67 68 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

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

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

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

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