Пусть в новой программе почти все переменные
являются целочисленными. Тогда удобно осуществлять их объявление так, чтобы переменная, для которой не указан тип, больше не объявлялась как variant.
Для этого применяется оператор DefType.
Например, определить соглашение, что все переменные, которые начинаются с I, будут целочисленными, с
помощью Deflnt I. Затем оператор Dim I будет объявлять
переменные типа integer. Основные типы разных операторов DefType, которые чаще всего используются:
Deflnt диапазон букв (для integer);
DefLng диапазон букв (для long integer);
DefSng диапазон букв (для single precision);
DefDbl диапазон букв (для double precision);
DefCur диапазон букв (для currency);
DefStr диапазон букв (для string);
DefVar диапазон букв (для variant);
DefBooi диапазон букв (для boolean);
DefByte диапазон букв (для byte);
DefDate диапазон букв (для date).
Не всегда здесь применяются заглавные буквы:
DefStr s-Z и Def-Str S-Z функционируют одинаково.
Соглашения о формах можно всегда изменить, применяя идентификатор или оператор Dim для каждой
из переменных. Оператор DefType располагают в том
же разделе (General), что и Option Explicit.
При программировании используют термин «область
видимости», если хотят сказать о возможности применения переменной из одной части программы в другой ее части. В старых языках все переменные были
применимы во всех частях программы, поэтому
сохранение целостности наименований было огромной проблемой. Например, если в приложении применялись две переменные Total, то их значения уничтожали друг друга.
Решение подобной проблемы в современных языках высокого уровня, среди которых и Visual Basic, заключается в изолировании переменных внутри процедур. Пока это не определено специальным образом,
значение переменной Total в одной процедуре никак
не влияет на переменную с таким же именем в другой
процедуре. На языке программирования такой подход
означает, что данные переменные локальны по отношению к процедурам, если не указано иначе. Например, процедура обработки события чаще всего не
имеет никакой связи с другой процедурой того же типа. Обычно в работе не используют переменные по
умолчанию. Если нужно быть уверенным, что эта переменная является локальной, нужно объявить ее внутри
процедуры события, применяя при этом оператор Dim.