Студопедия — Объявление переменных
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

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






Для указания типа переменной используются операторы объявления с, например, следующим синтаксисом:

Dim variablename [ As type ]

Здесь variablename — имя объявляемой переменной, type — тип данных. Переменные, объявленные с помощью оператора Dim внутри процедуры, существуют только во время выполнения этой процедуры. Такие переменные называются локальными. В различных процедурах можно использовать локальные переменные с одинаковыми именами. Примеры объявления переменных:

Dim stName1 As String

Dim inName2, inName3 As Integer

Переменные объявляются также в разделе объявлений формы, стандартного или модуля класса, что делает их доступными для всех процедур в модуле. Для того чтобы переменная была доступна процедурам всего приложения, вместо слова Dim следует использовать Public.

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

Function ToMorrow()

ToDay = Now()

ToMorrow = ToDay + 1

End Function

Этот способ использования переменных без предварительного объявления очень прост, но потенциально опасен тем, что вы можете делать ошибки, которые трудно находить. Дело в том, что при использовании переменных без предварительного объявления вы не пользуетесь средствами контроля редактора Visual Basic. Если вы объявили переменную и в дальнейшем в каком-либо операторе изменили (по ошибке) регистр какого-нибудь символа, редактор автоматически изменит написание переменной на объявленое. При этом уже нет необходимости вам постоянно переключаться с регистра на регистр. Можно работать с одним регистром. Редактор сам будет изменять регистры в соответствии с объявленным написанием переменной.

Если же вы не объявите переменную и постоянно при ее написании будете произвольно менять регистры, редактор будет менять написание всех вхождений переменной в соответствии с последним написанием. Если это вас утраивает — нет проблем.

Explicit-объявление

Работая в редакторе Visual Basic, вы можете задать такой режим, при котором у вас не будет возможности использовать ранее необъявленные переменные. Таким образом, если вы случайно введете имя переменной с ошибкой, это будет воспринято системой, как попытка использовать ранее небъявленную переменную, и при компиляции появится сообщение об ошибке (см. рис. 5.6).

Рис.5. 6

При наличии объявленияOption Explicit попытка использовать ранее небъявленную переменную приводит к сообщению об ошибке.

В окне редактора, приведенном на рис. 5.6, самая первая строка содержит оператор Option Explicit. Именно этот оператор является сигналом для проверки вашего кода на наличие имен переменных, которые вы забыли объявить. Вы можете вставить в модуль этот оператор самостоятельно, просто вводя его с клавиатуры, как обычный текст. Но в этом случае вам нужно будет выполнять эту операцию для каждого нового модуля. Если вы хотите, чтобы оператор Option Explicit автоматически вставлялся в каждый ваш модуль, выпоните следующее:

· Из меню Tools выберите Options.

· Щелкните на ярлычке вкладки Editor.

· Установите флажок Require Variable Declaration.

Для объявления переменных, кроме оператора Dim, можно использовать также операторы Private, Public и Static. Например:

Private inI As Integer

Public cuSell As Currency

Static stMyName As String

Private inII As Integer, doSq As Double

Область действия переменной

Область действия (scope) переменной — одно из наиболее важных понятий в программировании. Переменная может быть доступна не для всего кода приложения (не для всех модулей), не для всех процедур одного и того же модуля. Область действия переменной определяется способом ее объявления.

В зависимости от того, как объявлена переменная, она может иметь область процедурного (локальная) или модульного уровня.

Область действия Закрытые (Private) Открытые (Public)
Процедурного уровня (Procedure-level) Переменные доступны только для процедуры, в которой они объявлены. Внутри процедуры нельзя объявлять Public-переменные.
Модульного уровня (Module-level) Переменные доступны только для модуля, в котором они объявлены. Переменные доступны для всех модулей.

Переменные процедурного уровня «распознаются» только в процедуре, в которой они объявляются. Они также называются локальными. Такие переменные объявляются при помощи ключевых слов Dim и Static. Например:

Dim intNunber As Integer

Static intPrt As Integer

Значение локальной переменной, объявленной с помощью Static, сохраняется все время работы приложения. С другой стороны, локальная переменная, объявленная с помощью Dim, существует только во время выполнения процедуры, в которой объявлена переменная. Локальные переменные необходимы для всяких временных вычислений или удобного представления длинных арифметических выражений. Как только процедура с локальными переменными выполнится, память будет освобождена от локальных переменных.

По умолчанию переменная модульного уровня доступна всем процедурам модуля. Переменные модульного уровня объявляются с использованием ключевого слова Private в разделе Declarations в верхней части (в начале текста кода) модуля. Например:

Private strTemp As String

Private intTemp As Integer

На модульном уровне ключевые слова Private и Dim имеют одинаковое действие, но Private предпочтительней, поскольку, контрастируя со словом Public, делает код более понятным.

Чтобы сделать переменную доступной для всех модулей, используйте при объвлении переменной ключевое слово Public. Значения таких переменных доступны всем процедурам приложения. Как и переменные модульного уровня, public-переменные объявляются в секции Declarations в верхней части модуля. Нельзя объявлять public-переменные в коде процедуры. Например:

Public intTemp As Integer

Имена переменных, объявленных с помощью ключевого слова Public в различных модулях, могут совпадать. В этом случае для правильной ссылки на переменную следует использовать не только ее имя, но и имя модуля. Например, если public-переменная strFirstName типа String объявлена как в модуле ModuleStart, так и в модуле формы FormMain, то для правильной ссылки на эти (их теперь — две) переменные следует использовать выражения ModuleStart.strFirstName и FormMain.strFirstName.







Дата добавления: 2015-08-29; просмотров: 531. Нарушение авторских прав; Мы поможем в написании вашей работы!



Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

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

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

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

Неисправности автосцепки, с которыми запрещается постановка вагонов в поезд. Причины саморасцепов ЗАПРЕЩАЕТСЯ: постановка в поезда и следование в них вагонов, у которых автосцепное устройство имеет хотя бы одну из следующих неисправностей: - трещину в корпусе автосцепки, излом деталей механизма...

Понятие метода в психологии. Классификация методов психологии и их характеристика Метод – это путь, способ познания, посредством которого познается предмет науки (С...

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

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

Тактические действия нарядов полиции по предупреждению и пресечению групповых нарушений общественного порядка и массовых беспорядков В целях предупреждения разрастания групповых нарушений общественного порядка (далееГНОП) в массовые беспорядки подразделения (наряды) полиции осуществляют следующие мероприятия...

Studopedia.info - Студопедия - 2014-2024 год . (0.01 сек.) русская версия | украинская версия