Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Какие бывают массивы



Массивы бывают не только числовые, но и строковые и типа Date и прочие. Подходит любой известный нам тип. Например:

Dim s(1 To 50) As String

Это означает, что в каждой из 50 ячеек должно находиться не число, а произвольная строка. Вот элементарный пример использования строкового массива:

Dim s(1 To 50) As String

Private Sub Command1_Click()

s(21) = "Привет": Debug.Print s(21)

End Sub

Вот пример работы с массивами других типов:

Dim b(1 To 30, 1 To 6) As Boolean

Dim DT(1 To 10) As Date

Private Sub Command1_Click()

b(2, 3) = False: Debug.Print b(2, 3)

DT(2) = #1/15/2156 11:59:42 PM#: Debug.Print DT(2)

End Sub

Еще пример:

Private Enum типРуль

вверх

влево

вниз

вправо

End Enum

Dim Руль(1 To 300) As типРуль

Private Sub Command1_Click()

Руль(200) = вправо: Debug.Print Руль(200)

Руль(220) = влево: Debug.Print Руль(220)

End Sub

Здесь будут напечатаны числа 3 и 1, так как элементы перечислимого типа пронумерованы по порядку от 0.

Границы индексов в круглых скобках тоже могут быть разными, например:

Dim a(20 To 60) As Integer

Здесь под числа отводится 41 ячейка. Еще пример:

Dim b(0 To 9, -20 To 30) As Integer

Здесь под числа отводится 10*51=510 ячеек.

Раз вы объявили границы индексов, то должны их придерживаться. Так, неправильно было бы теперь написать a(15) = 0.

Если нижняя граница индекса вашего массива равна нулю, то вы можете сэкономить усилия и вместо

Dim f (0 To 9) As Integer

писать

Dim f (9) As Integer

так как Visual Basic по умолчанию считает нижней границей индекса всех массивов число 0. Если же вам хочется, чтобы эта льгота касалась массивов с нижней границей равной не 0, а 1, то наверху программы напишите





Дата публикования: 2014-12-28; Прочитано: 261 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...