ВНИМАНИЕ - всем у кого есть свои сайты или странички!
Я создаю раздел ::друзья::
Разместив у себя ссылку на мой сайт и прислав мне письмо след. содержания:
Имя владельца
Название проекта
Мой сайт посвящен этому
Ссылка на ваш сайт - здесь
У вас есть шанс попасть в начало списка, т.к. пока он пуст,
вы можете оказаться под номером 1.2.3.
Следовательно, шанс что на ваш сайт пройдут посетители будет больше.
Письма будут сортироваться по времени прихода письма ко мне
Конкурс открыт!
Объявление
Желаете разместить объявление в рассылке или у вас интересная новость, тогда пишите, рассмотрим.
Тематика, не обязательно программирование - новости, юмор, интересное, статьи на любую тему.
В гостевой было замечание многие ссылки не работают -
особенно на статьи так что ж вы молчите напишите на почту и
я буду проверять - с какой страницы на какую нет перейти.
А так ошибки и останутся ошибками
Visual Basic предоставляет возможность не указывать каждый раз имя переменной
типа запись, при обращении к её элементам. Это особенно полезно, когда
запись имеет много внутренних членов. Для этого есть слово With:
With
newStud
    .FIO = "Бабай Бабаевич Бабаев"
    .Age = 20
    .HasGramot = True
End With
Настало время объявить массив элементов типа запись (точнее типа Student):
Dim
myStudArray (20) As Student
Здесь мы объявили массив из 21 студента. Теперь можно обращаться к элементам
массива точно так же, как мы это делали раньше:
myStudArray(0).FIO
= "Билл Гейтс Пупкинович"
Как видите всё гениальное просто! Особенно в Visual Basic! :)
Перечисления
Перечисления тоже довольно важная и нужная штука. В принципе, вы с ними
уже встречались. Где? А вспомните, что происходило, когда вы напротив
Boolean переменной ставили знак равенства? Правильно, Visual Basic выдавал
вам список из двух значений на выбор - True и False. Это и есть перечисление.
Другими словами перечисление - это список констант. Перед использованием
такого списка его необходимо определить в программе. Например, рассмотрим
перечисление оценок, получаямых студентами:
Присваивать значения константам внутри Enum не обязательно. Если этого
не сделать, то константы будут принимать значения 0,1,2... и т.д.
Теперь можно объявить переменную типа Ocenka:
Dim
oc1 As Ocenka
И, если вы теперь попытаетесь присвоить такой переменной значение - Visual
Basic выдаст список (Neud, Horosho и Otlichno) из которого вы сможете
выбрать нужное значение. Также эти константы можно использовать, например,
при проверке условий, т.е. If oc1 = Horosho Then ... Но об условиях позже.
Чтобы закрепить полученные знания, давайте переопределим нашу запись
Student на вот какую:
Private
Type
Student ' вместо Private могло быть и Public
    FIO As String
    Age As Byte
    HasGramot As Boolean
    ikzamenFizika As Ocenka
    ikzamenMatan
As Ocenka
End Type
Теперь чтобы присвоить оценку 5 по матанализу студента под номером 3, необходимо
написать:
myStudArray(2).ikzamenMatan
= Horosho
Теперь, как видите, код очень прозрачен. Такой код гораздо легче для понимания,
поэтому прежде чем определять какие-либо данные в своей программе, сначала
подумайте, как это лучше реализовать? Может лучше что-то сделать с помощью
записей? Или перечислений? И т.д.
Примечание: Те, кто программировал на паскале помнят про множества.
Так вот, могу их огорчить, множеств в Visual Basic нет. Но в принципе,
никто не мешает вам реализовать их самостоятельно, написав соответствующие
функции.
Ну вот и всё. На этом закончим с массивами, записями и перечислениями.
Пора переходить к более практичному - выражениям!
Арифметические операторы
Следующий оператор в следующем выпуске
оператор Not
Используется для совершения логичкого инвертирования двух выражений.
Синтаксис:
результат = Not
выражение
результат обязателен; Любая числовая (включая Boolean) переменная выражение обязательно; Любое выражение
Замечания:
Следующая таблица показывает как работает оператор Not:
Если выражение
=
То
результат =
True
False
False
True
Null
Null
Оператор Not инвертирует все биты выражения. Для битов оператор
Not работает следующим образом (смотреть слева направо):
0 1
1 0
Результат выделен жирным шрифтом.
Примеры:
Dim
A, B, C, D, MyCheck
A = 10: B = 8: C = 6: D = Null
MyCheck = Not(A > B)
' Возвратит
False.
MyCheck = Not(B > A)
' Возвратит
True.
MyCheck = Not(C > D) '
Возвратит
Null.
MyCheck = Not A ' Возвратит
-11 (все биты инвертированы)
Рассмотрим подробнее последний пример. Число 10 представляется в виде
битов следущим образом (как байт, т.е. 8 битов):
0000 1010
После инвертирования всех битов получим:
1111 0101
А это и есть -11.
Функции Visual Basic
Я попытаюсь рассмотреть все
Функция CInt
CInt(Expression)
Функция CInt(Conversion to Integer) используется для приведения выражения в тип Integer
Возвращаемое значение
Функция CInt возвращает значение аргумента, преобразованное в числовой целый тип данных Integer. Дробная часть при этом округляется
Параметры
Expression
Любое числовое выражение или строка,представляющая число от -32768 до 32767
Если числовое значение Expression не попадает в диапазон допустимых значений, происходит ошибка стадии выполнения Overflow.
Если Expression имеет тип данных String,то он должен быть числом, иначе возникает ошибка стадии выполнения Type mismatch.
Если дробная часть Expression равна 0.5, CInt всегда округляет его до ближайшего четного числа, т.е. CInt(2.5)= 2, a CInt(1.5)= 2
Пример
Dim A, retval
A=1234.5678 ' A имеет тип Double
retval = CInt(A)' преобразуем в Integer
Debug.Print retval ' получаем 1235
Категория
Функции преобразования типов данных