Лекция 1 - mpei.ruglagolev.mpei.ru/l01.pdf · Лекция 1 Программирование...

12
Лекция 1 Оглавление Программирование на Visual Basic в среде Microsoft Visual Studio 2010............................... 2 Введение ................................................................................................................................ 2 Оргвопросы ........................................................................................................................... 2 Необходимое оборудование для изучения дисциплины ................................................. 2 Необходимое программное обеспечение ......................................................................... 2 Работа в компьютерном классе ИВЦ МЭИ ...................................................................... 2 О дистанционной форме обучения ................................................................................... 3 Переменные и константы...................................................................................................... 4 Основные базовые типы данных .......................................................................................... 5 Правила назначения имен ..................................................................................................... 5 Правила построения программного кода ............................................................................. 6 Объявление переменных....................................................................................................... 6 Пояснение некоторых типов данных ................................................................................... 7 1. Short / Integer / Long ...................................................................................................... 7 2. Single / Double / Decimal ................................................................................................ 7 3. String .............................................................................................................................. 9 4. Date................................................................................................................................. 9 5. Boolean ........................................................................................................................... 9 6. Object ............................................................................................................................ 10 Константы ........................................................................................................................... 10 Структура кода формы и модуля ........................................................................................ 10 Область видимости переменных и констант...................................................................... 11 Время жизни переменных................................................................................................... 11 Вопросы для контроля ........................................................................................................ 12

Upload: others

Post on 23-Jun-2020

13 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Лекция 1 - mpei.ruglagolev.mpei.ru/L01.pdf · Лекция 1 Программирование на Visual Basic в среде Microsoft Visual Studio 2010 Введение Visual

Лекция 1

Оглавление

Программирование на Visual Basic в среде Microsoft Visual Studio 2010............................... 2

Введение ................................................................................................................................ 2

Оргвопросы ........................................................................................................................... 2

Необходимое оборудование для изучения дисциплины ................................................. 2

Необходимое программное обеспечение ......................................................................... 2

Работа в компьютерном классе ИВЦ МЭИ ...................................................................... 2

О дистанционной форме обучения ................................................................................... 3

Переменные и константы...................................................................................................... 4

Основные базовые типы данных .......................................................................................... 5

Правила назначения имен ..................................................................................................... 5

Правила построения программного кода ............................................................................. 6

Объявление переменных ....................................................................................................... 6

Пояснение некоторых типов данных ................................................................................... 7

1. Short / Integer / Long ...................................................................................................... 7

2. Single / Double / Decimal ................................................................................................ 7

3. String .............................................................................................................................. 9

4. Date................................................................................................................................. 9

5. Boolean ........................................................................................................................... 9

6. Object............................................................................................................................ 10

Константы ........................................................................................................................... 10

Структура кода формы и модуля ........................................................................................ 10

Область видимости переменных и констант...................................................................... 11

Время жизни переменных ................................................................................................... 11

Вопросы для контроля ........................................................................................................ 12

Page 2: Лекция 1 - mpei.ruglagolev.mpei.ru/L01.pdf · Лекция 1 Программирование на Visual Basic в среде Microsoft Visual Studio 2010 Введение Visual

Лекция 1

Программирование на Visual Basic в среде Microsoft Visual Studio 2010

Введение

Visual Basic.NET (VB.NET) – это объектно-ориентированный язык визуального

программирования высокого уровня. Этот язык предназначен для разработки Windows-

приложений и Web-приложений. Он появился в 2001 г. после версии VB 6.0 и спустя 10

лет после появления первой версии Visual Basic.

Одним из основных компонентов платформы .NET является Framework. Framework

содержит все функции операционной системы и делает их доступными приложению через

методы.

Успех VB в первую очередь являлся следствием простоты и удобства этого языка.

С появлением Framework VB стал не менее мощным, чем любой другой язык. Вряд ли

можно найти что-то, что нельзя сделать, применяя VB.NET, но можно сделать с помощью

другого языка. На VB написано больше приложений, чем на любом другом языке.

Гигантский плюс VB – время разработки приложения минимально. Там где

требуются высокая скорость разработки приложения - для VB практически нет

альтернативы. Очень сильное преимущество VB в его, скажем так, распространенности

или стандартизованности. VB доступен в виде VBA во всех офисных приложениях, а

также в некоторых других продуктах.

Оргвопросы

Необходимое оборудование для изучения дисциплины 1. Личный ПК с быстродействием 1,6 Мгц или выше, оперативной памятью 1 ГБ или

больше, памятью на жестком диске 5 ГБ или больше, с DVD RW.

2. Съемный накопитель (флешь-память) с объемом памяти не менее 8 ГБ.

Необходимое программное обеспечение 1. Windows XP или более поздней редакции.

2. Microsoft Office Word 97/2010.

3. Microsoft Office PowerPoint 97/2010.

4. Adobe Reader (распространяется свободно).

5. Microsoft Visual Studio 2010. Где взять это приложение:

a) DreamSpark – это бесплатный для школьников, студентов, аспирантов и преподавателей

доступ к полным лицензионным версиям инструментов Microsoft для разработки и

дизайна (http://www.dreamspark.ru). На главной странице нажать на кнопку Получить

доступ и подтвердить, что вы являетесь студентом НИУ МЭИ (переслать фото

студбилета или сообщить Ваш адрес электронной почты ОСЭП).

b) Скачать бесплатно пробную версию продукта (на 30+60 дней) с сайта

http://www.microsoft.com/visualstudio/ru-ru/try.

c) Копировать файлы установки в локальной сети ИВЦ МЭИ

k:\FP\INF.NET\Установка системы Microsoft Visual Studio 2010 Professional\VS 2010.

Работа в компьютерном классе ИВЦ МЭИ 1. После включения компьютера по требованию системы следует ввести пароль:

usНомерРабочегоМеста (например us8 или us14).

НомерРабочегоМеста – целое число без знака от 1 до 20 без лидирующего нуля.

Page 3: Лекция 1 - mpei.ruglagolev.mpei.ru/L01.pdf · Лекция 1 Программирование на Visual Basic в среде Microsoft Visual Studio 2010 Введение Visual

2. Диском пользователя является локальный диск d. В корневом каталоге этого диска

пользователь должен создать свою рабочую папку. Имя рабочей папки должно

быть уникально в пределах учебной группы. Новый проект должен быть сохранен в

своей рабочей папке на диске d. Перед окончанием занятия рабочую папку следует

копировать на собственный съемный носитель данных. После успешного

выполнения операции копирования рабочую папку на диске d рекомендуется

удалить.

3. Для продолжения работы с проектом на следующем занятии следует копировать

рабочую папку со своего съемного носителя в корневой каталог диска d. Открывать

проект для продолжения работы следует с диска d.

4. Условия заданий, выполняемых в 1-ом семестре, можно найти на сайте дисциплины

http://glagolev.mpei.ru, а также в локальной сети ИВЦ МЭИ k:\FP\INF.NET.

Содержание папки k:\FP\INF.NET\ 1- ый семестр – это задания к девяти лабораторным

работам и приложения:

О дистанционной форме обучения

Обучение по дистанционной форме позволит Вам:

• Свободно располагать своим временем.

• Досрочно сдать зачет и экзамен.

Подробная информация по дистанционному обучению опубликована по адресу

http://dot.mpei.ru/do/.

Для перехода на дистанционную форму обучения необходимо:

1. Написать заявление на бланке.

2. Заключить договор.

3. Оплатить дистанционное обучение (для курса ИТ это 4900 руб.).

Page 4: Лекция 1 - mpei.ruglagolev.mpei.ru/L01.pdf · Лекция 1 Программирование на Visual Basic в среде Microsoft Visual Studio 2010 Введение Visual

Переменные и константы

Иногда нам с Вами необходимо запомнить или записать кое-что на память. При

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

некоторые данные. Для каждого из них выделяется участок памяти компьютера,

состоящий из одного или нескольких байтов. Чтобы эти участки памяти можно было

различать, а также, иметь возможность сослаться на содержимое некоторого конкретного

участка памяти, ему сопоставляют имя. Вот эта пара включающая участок памяти и

сопоставленное ему имя и есть переменная.

Итак, переменная – это в некотором смысле ячейка для хранения информации, например,

числа, строки символов. При этом имеется возможность неоднократно считывать

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

Переменная может изменять свое значение в процессе выполнения программы. Но не

следует воспринимать слово может в смысле обязана. Ее значение может оставаться

неизменным от начала до конца выполнения программы, но принимать разные значения в

разных прогонах программы.

Множество значений, которые может принимать переменная, допустимые операции,

которые с ней можно выполнять количество байтов, отведенных для нее, определяется

типом переменной.

К константам относится все то, что сказано выше о переменных. Но есть одно

существенное отличие. Константа в отличие от переменной не может изменить значение

при выполнении программы. Переменные и константы – это данные.

Page 5: Лекция 1 - mpei.ruglagolev.mpei.ru/L01.pdf · Лекция 1 Программирование на Visual Basic в среде Microsoft Visual Studio 2010 Введение Visual

Основные базовые типы данных

Название типа

Длина

области

памяти в

байтах

Диапазон значений

Byte 1 0 – 255

Boolean

(логический)

2 True или False

Short (короткий

целый)

2 От -32 768 до 32 767

Integer (целый) 4 От -2 147 483 648 до 2 147 483 647

Long (длинный целый) 8 От -9 223 372 036 854 775 808 до

9 223 372 036 854 775 807 Single

(числа с дробной

частью одинарной

точности)

4 Отрицательные числа от -3,402823*1038

до

-1,401298*10-45

и положительные от 1,401298*10

-45

до 3,402823*1038

.

Точность 6 – 7 десятичных разрядов. Double

(числа с дробной

частью двойной

точности)

8 Отрицательные числа от -1,79769313486232*10308

до -4,9406564841247*10-324

и

положительные от

4,9406564841247*10-324

до 1,79769313486232*10308

.

Точность 14 – 15 десятичных разрядов.

Decimal

(целые числа и числа с

дробной частью)

16 Масштабируемый показателем степени 10P, где P

изменяется в пределах от 0 до 28.

Число имеет P разрядов дробной части.

Максимальное значение равно

79 228 162 514 264 337 593 543 950 335,

минимальное значение равно

-79 228 162 514 264 337 593 543 950 335.

Date (дата/время) 8 От 0:00:00 1 января 0001 г. до 23:59:59

31 декабря 9999 г.

String (строка

переменной длины)

2 байта

на

символ.

Приблизительно до 2 миллиардов символов

Object (объект) 4 Любой объект

Все типы в VB подразделяются на два вида – типы значения и ссылочные типы. Для

переменной типа значение в отведенной для неё области памяти содержится значение

этой переменной. Для переменной ссылочного типа в отведенной для неё области памяти

содержится адрес области памяти, в которой записано значение этой переменной.

Из базовых типов все типы, кроме типов String и Object являются типами

значениями. Типы String и Object являются ссылочным.

Правила назначения имен

При назначении имени в VB используются следующие правила:

должно начинаться с буквы;

может включать только буквы, цифры и символ подчеркивания;

должно быть уникальным в пределах области видимости.

Page 6: Лекция 1 - mpei.ruglagolev.mpei.ru/L01.pdf · Лекция 1 Программирование на Visual Basic в среде Microsoft Visual Studio 2010 Введение Visual

Обратите внимание, имя не может начинаться с цифры, не может содержать пробел ( ),

точку (.), запятую (,), восклицательный знак (!) или символы (@), (&), ($), (#). Не следует

использовать имена, совпадающие с зарезервированными словами языка.

В языке VB не различаются строчные и прописные буквы.

Правила построения программного кода

Чтобы VB «понимал» исходный код, следует придерживаться определенных правил

написания программ. Каждая инструкция начинается с новой строки.

Например, простейшая инструкция присвоения:

a = b*c+d

Действие этой инструкции заключается в том, что вычисляется значение результата

выражения, находящегося справа от знака равенства, которое записывается в ячейку

памяти, соответствующую переменной, имя которой находится слева от знака равенства.

Если тип результата выражения не совпадает с типом переменной, то выполняется

преобразование типа результата выражения к типу переменной.

Можно разделять строку, а значит и инструкцию, на несколько строк. Разделителем строк

служит помещенный в конце строки пробел, следующий перед символом подчеркивания

(_). Это дает возможность форматировать длинные, трудно обозримые строки так, чтобы

они полностью помещались по ширине экрана: Private Sub btnПуск_Click(ByVal sender As _

System.Object, ByVal e As System.EventArgs) _

Handles btnПуск.Click

Строка программы в VB может содержать максимум 1023 символа и не более десяти

разделителей – этого обычно достаточно.

В одной строке можно также объединять несколько инструкций, которые разделяются

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

иначе программный код будет нечитабельным:

a = b: c = d + 5

B программном коде могут быть использованы комментарии. Комментарии

предназначены для пояснения отдельных фрагментов программы и игнорируются VB при

выполнении программы. Для выделения начала комментария можно использовать

верхнюю запятую ('). Верхняя запятая может ставиться в любом месте строки, при этом

текст комментария располагают справа:

a = c/7 'Это инструкция присвоения

Число строк кода (формы, модуля и т.п.) ограничивается 65534. Это ограничение не

существенно, поскольку число строк в большинстве программ меньше.

Объявление переменных

Переменная должна быть объявлена до первого обращения к ней. По умолчанию не

допускается в программном коде применять имена не объявленных переменных. Это

ограничение может быть отменено инструкцией Option Explicit Off. Однако

пользоваться этим не рекомендуется, так как разрешение применения в программе

необъявленных имен может привести к трудно обнаруживаемым ошибкам.

Синтаксис инструкции объявления переменной: Static/Public/Private/Dim ИмяПеременной As Тип [= Значение]

Здесь слова Static, Public, Private, Dim и As являются зарезервированными.

В подобных определениях синтаксиса прямоугольные скобки […] означают, что

конструкция, находящаяся внутри этих скобок, не обязательна. Символ / означает, что

Page 7: Лекция 1 - mpei.ruglagolev.mpei.ru/L01.pdf · Лекция 1 Программирование на Visual Basic в среде Microsoft Visual Studio 2010 Введение Visual

должно быть выбрано одно из слов, между которыми он поставлен. Сами же символы [, ],

/ в текст объявления не включаются.

Действие инструкции объявления переменной состоит в том, что под переменную

отводится ячейка памяти, в которую записывается значение, если оно указано после

указания типа.

Зарезервированные слова Public (общая) и Private (локальная) задают область

видимости переменной. Слово Static (статическая) применяется при объявлении

статических переменных. Рассмотрение области видимости переменных, а также

статических переменных отложим на потом.

Зарезервированное слово Dim (величина) чаще всего применяется при объявлении

локальных переменных, например:

Промеры: Dim k As Integer = 1

Dim b15 As Single, Количество As Integer

Dim a, b, c As Single

‘Объявлены три переменные одинарной точности

‘с дробной частью

Dim S29 As String

Пояснение некоторых типов данных

Переменные типов Short, Integer, Long, Single, Double, и Decimal принимают

числовые значения.

1. Short / Integer / Long Данные типа Short, Integer, Long могут содержать лишь целые числовые значения из

различных диапазонов. Если в программе объявлена переменная типа Integer с именем ks

инструкцией Dim ks As Integer, то где-нибудь далее в программе можно записать

ks = 1000 и для всех инструкций, которые появятся после этого, переменная ks будет

всегда равна 1000 пока, возможно, не появится инструкция, изменяющая значение этой

переменной, например ks = 1050.

В этой инструкции ks является именем переменной, а 1050 в последнем примере – её

значением.

Инструкцию ks = 1050 называют присвоением (или присваиванием). Переменная ks

получает значение, равное 1050.

Эту инструкцию нельзя понимать в том смысле, что левая часть равна правой части. Знак

равенства в этой инструкции не имеет привычного для нас смысла, что левая часть равна

правой. Он обозначает действие, заключающееся в том, что значение правой части

записывается в ячейку памяти, отведенную для хранения значения переменной,

находящейся слева от знака равенства в инструкции присвоения. Будет ошибкой записать

эту инструкцию так: 1050 = ks. Слева от знака равенства должна находиться

переменная.

2. Single / Double / Decimal Данные типа Single и Double содержат числа с дробной частью из разных

диапазонов значений. Single – с 6 верными десятичными разрядами после запятой,

Double – с 14 верными десятичными разрядами после запятой.

Пример Dim a, b As Single

Dim c, d As Double

a = –17.876

b = 1.6E–5

c = 12.3456789

Page 8: Лекция 1 - mpei.ruglagolev.mpei.ru/L01.pdf · Лекция 1 Программирование на Visual Basic в среде Microsoft Visual Studio 2010 Введение Visual

d = –2E+3

В этом примере показаны две применяемые формы записи числовых констант с

дробной частью. Это основная форма (–17.876, 12.3456789), в которой для

разделения целой и дробной частей применяется точка. Это также форма константы с

порядком (1.6E–5, –2E+3). Здесь под условной записью 1.6E–5 следует понимать

значение 1.6*10–5

и под записью –2E+3 следует понимать значение –2*103. Буква E в

форме с порядком указывает, что это константа c дробной частью.

Данные типа Decimal также служат для представления чисел с дробной частью,

но обрабатываются они как целые 16-байтовые значения, которые масштабируются

показателем степени 10. Масштаб – это целое число от 0 до 28, которое определяет

количество запятой после запятой.

Поясним на примере идею выполнения арифметических операций с данными типа

Decimal. Пусть нам нужно найти произведение двух сомножителей: 525.32295 и

21.427177. Преобразуем с помощью соответствующих масштабов сомножители так, чтобы

они не имели дробной части:

525.32295*21,427177 = (52532295*10-5

)*(21427177*10-6

) = 52532295*21427177*10-11

=

1125618783181215*10-11

= 11256,18783181215

Здесь существенно то, что операция умножения выполняется над целыми числами,

следовательно – без ошибок. Здесь дробная часть получена полностью, без округления

или потери младших разрядов.

К такому же результату приведет выполнение следующего фрагмента программы: Dim a As Decimal = 525.32295

Dim b As Decimal = 21.427177

Dim c As Decimal

c = a * b

Console.WriteLine(c) ‘Эта инструкция обеспечивает ‘вывод

значения переменной с в окне Output (Вывод)

В окне Output отобразится число 11256,18783181215.

Операция выполнена без погрешности. Младшие разряды результата не потеряны.

Обратите внимание, в окне Output целая часть числа отделена от дробной не точкой, а

запятой. Следует твердо запомнить. В программном коде VB для отделения целой части

числа от дробной части всегда применяется точка. Но в результатах вывода (а также в

данных, подготовленных для ввода) действует другое правило. Здесь в этой роли

выступает символ, установленный для этой роли в операционной системе. Настройкой

операционной системы (командой Панель управления, Язык и региональные

стандарты) его можно менять. Чаще всего в операционной системе в качестве символа,

применяемого для отделения целой части числа от дробной части установлена запятая.

Интересно посмотреть, какой результат будет получен, если в том же примере все три

переменные будут иметь тип Single?

Dim a As Single = 525.32295

Dim b As Single = 21.427177

Dim c As Single

c = a * b

Console.WriteLine(c)

В окне Output отобразится число 11256,19. Как видим, девять младших разрядов

дробной части потеряны, округление привело к погрешности.

Посмотрим, что нам даст двойная точность: Dim a As Double = 525.32295

Dim b As Double = 21.427177

Dim c As Double

c = a * b

Console.WriteLine(c)

Page 9: Лекция 1 - mpei.ruglagolev.mpei.ru/L01.pdf · Лекция 1 Программирование на Visual Basic в среде Microsoft Visual Studio 2010 Введение Visual

В окне Output отобразится число 11256,1878318122. Как видим, и здесь потерян

один младший разряд дробной части результата, что привело к погрешности.

В инженерных расчетах, где не требуется высокая точность, обычно применяется тип

Single. В научных расчетах, где требуется высокая точность, рекомендуется применять

тип Double. В бизнес-расчетах следует применять тип Decimal.

К числовым переменным можно применять арифметические операции сложения (+),

вычитания (-), умножения (*), деления (/), возведения в степень (^).

В VB.NET используется два специальных значения, которые могут получиться в

результате выполнения вычислений: NaN (неопределенное значение) и Infinity

(бесконечность). Значение NaN получится, например, как результат вычисления

квадратного корня отрицательного числа (некорректный результат). Значение Infinity

означает, что получен такой большой по модулю результат, что он не может быть записан

в ячейке памяти (например, при делении на 0).

3. String Переменные типа String предназначены для хранения текста. Значением такой

переменной типа может быть строка символов.

Для того чтобы VB отличал константу типа строки символов от имени переменной,

константа заключается в парные кавычки:

Dim a As String

a = "Привет Мир" 'Результат: Привет Мир

Строки можно объединять. В качестве оператора объединения строк в VB можно

использовать как знак суммирования (+), так и знак "коммерческое и" (&). Однако для

лучшей читаемости кода рекомендуется применять только &, так как знак плюса

используется обычно при суммировании числовых значений.

Dim a, b, c As String

a = “Петр ”

b = “великий”

c = a+b ‘Значение: Петр великий

c = a&b ‘Значение: Петр великий

4. Date Значением переменной типа Date может быть дата, время или дата и время.

Данные типа Date специально предназначены для обработки информации о дате и

времени. Чтобы для VB было понятно, что под указанным значением подразумевается

дата и/или время, нужно поместить его между двумя знаками #. При вводе следует

пользоваться американским форматом (мм/дд/гг). Если же при вводе данных этого типа

использовать кавычки ("), что допустимо, то следует применять установленный в системе

формат даты и времени (как правило – дд/мм/гг):

Dim dtVar As Date

dtVar = #10/16/95# 'Результат: 16.10.95

dtVar = #1:25:00 PM# 'Результат: 13:25:00

dtVar = "6.10.95" 'Результат: 6.10.95

dtVar = "13:25" 'Результат: 13:25:00

5. Boolean Переменная типа Boolean может принимать всего два значения. Такая переменная

может иметь значение True (истина) или значение False (ложь).

В VB значению True соответствует 1, а False - 0. Если переменной этого типа

присваивается значение 0, то переменная содержит False. Все другие значения

подразумевают True:

Dim nVar As Boolean

Page 10: Лекция 1 - mpei.ruglagolev.mpei.ru/L01.pdf · Лекция 1 Программирование на Visual Basic в среде Microsoft Visual Studio 2010 Введение Visual

nVar = 5 'Результат: True

6. Object Данные этого типа являются наиболее гибкими, поскольку могут приводиться к любому

другому типу. Такая переменная обрабатывается в соответствии с ее содержимым. Если

ей присвоить целое значение, то она обрабатывается как целая переменная, а если строку

– как строковая.

Если при объявлении переменной ее инициализация не предусмотрена, то по умолчанию

переменная получит следующее значение:

Переменная любого числового типа – значение 0.

Переменная типа строки символов – значение пустая строка “”.

Переменная логического типа – значение False.

Константы

Основное отличие констант от переменных состоит в том, что их значение нельзя

изменять в процессе выполнения программы. Они всегда сохраняют значение,

присвоенное в объявлении.

При объявлении константы необходимо задать ее имя, тип, область действия и значение.

Синтаксис объявления константы: [Public/Private] Const ИмяКонстанты As Тип = Значение

Приведенное определение синтаксиса означает, что объявление константы содержит

обязательное слово Const (константа). Перед Const может стоять Private (локальная)

или Public (общая), то есть одно из слов, задающих область действия константы. Затем

должно следовать имя константы. После имени стоит зарезервированное слово As и

наименование типа. Затем должен следовать знак равенства и значение константы.

В определении подчеркнуто наименование той области действия, которая может быть

задана по умолчанию.

В следующем примере описывается константа a целого типа, и ей присваивается значение

54.

Const a As Integer = 54

Допускается также описание нескольких констант в одной строке. В этом случае, чтобы

задать тип данных, надо указать название типа для каждой константы.

Структура кода формы и модуля

Проект обычно включает в свой состав одну или несколько форм и может

включать модули.

Форма может содержать объекты (надписи, кнопки и т.д.). При выполнении

приложения она отображается на экране монитора в виде окна. Модуль отличается от

формы тем, что он не может содержать объектов и не отображается при выполнении

проекта.

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

объявления и процедуры.

Процедуры могут содержать как инструкции – объявления, так и выполняемые

инструкции.

Процедуры различают подпрограммы и функции.

Подпрограмма состоит из заголовка, включающего зарезервированное слово Sub, тела и

конечной строки End Sub:

… Sub …

Инструкции (тело подпрограммы)

End Sub

Page 11: Лекция 1 - mpei.ruglagolev.mpei.ru/L01.pdf · Лекция 1 Программирование на Visual Basic в среде Microsoft Visual Studio 2010 Введение Visual

Функция состоит из заголовка, включающего зарезервированное слово Function, тела и

конечной строки End Function:

… Function …

Инструкции (тело функции)

End Function

Область видимости переменных и констант

Весьма важной характеристикой переменных и констант является область их определения

(видимости). В VB есть три вида области определения, характеризующие доступность

переменной:

область блока: переменная доступна только внутри блока (блок –

последовательность инструкций, заканчивающаяся одной из строк Next, Loop, End

If).

локальная область: переменная доступна только внутри процедуры;

область формы или модуля: переменная доступна только внутри формы или

модуля;

глобальная область: переменная доступна во всем проекте, то есть во всех

процедурах всех форм и модулей.

Переменные блока

Они объявлены внутри блока и вне блока недоступны.

Локальные переменные

Локальными являются переменные, объявленные внутри процедуры. Они доступны

только внутри этой процедуры.

Переменные формы или модуля

Эти переменные определяются в коде формы или модуля (но не внутри процедуры) и

доступны только внутри соответствующей формы или модуля.

Глобальные переменные

Глобальные переменные определяются в коде модуля (но не внутри процедуры).

При этом вместо оператора Dim используется зарезервированное слово Public.

Глобальные переменные доступны во всех модулях и формах проекта.

Время жизни переменных

Локально объявленные переменные при выходе из процедуры удаляются из памяти, а при

новом вызове процедуры инициализируются заново. Их содержимое при выходе из

процедуры не сохраняется, что не всегда желательно.

VB дает возможность объявлять переменные как статические. При выходе из процедуры

содержимое статической переменной сохраняется. При новом вызове этой процедуры

переменная имеет значение, которое она имела при последнем выходе из этой процедуры.

Содержимое переменной сохраняется в течение всего времени, пока существует в памяти

форма или модуль.

Для объявления переменной как статической нужно вместо слова Dim использовать слово

Static:

Static A As Integer

В следующем примере описываются локальные константы Pi и Wg как Single: Const Pi As Single = 3.14159, Wg As Single = 2.78

Еще один пример демонстрирует преимущество использования констант. Например, при

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

только имя константы Pi: circles = Pi * aRadius

^ 2 + Pi * bRadius

^ 2

Page 12: Лекция 1 - mpei.ruglagolev.mpei.ru/L01.pdf · Лекция 1 Программирование на Visual Basic в среде Microsoft Visual Studio 2010 Введение Visual

Еще одно преимущество констант заключается в том, что если константа

используется в нескольких процедурах, то при изменении ее значения оно будет

правильно воспринято всеми процедурами.

Вопросы для контроля

1. Является ли правильным утверждение, что арифметическая операция с целыми

числами, имеющая целочисленный результат, выполняется точно?

2. Является ли правильным утверждение, что арифметическая операция с числами,

имеющими дробную часть, выполняется точно?

3. Сколько байтов памяти занимает переменная типа Single?

4. Сколько байтов памяти занимает переменная типа Integer?

5. Сколько байтов памяти занимает переменная типа Boolean?

6. Правильным ли является имя переменной Петр 1?

7. Где должна быть объявлена переменная или константа, чтобы она действовала

только внутри процедуры?

8. Где должна быть объявлена переменная или константа, чтобы она действовала во

всех процедурах формы (модуля)?

9. Где должна быть объявлена переменная или константа, чтобы она действовала во

всех процедурах всех форм (модулей)?

10. В чем отличие статической переменной от переменной, не являющейся

статической?