КАК внести готовую матрицу в двумерный массив Я идиот! Убейте меня, кто-нибудь!

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Manson
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 30.07.2003 (Ср) 18:16
Откуда: Israel,Jerusalem

КАК внести готовую матрицу в двумерный массив Я идиот! Убейте меня, кто-нибудь!

Сообщение Manson » 06.08.2003 (Ср) 18:26

Как сделать на ВиБи следущую штуку (на Си) :

int m[2][2]={1,2,3,4};

skiperski
Идеолог
Идеолог
Аватара пользователя
 
Сообщения: 1386
Зарегистрирован: 25.06.2002 (Вт) 15:52

Сообщение skiperski » 06.08.2003 (Ср) 18:51

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

Код: Выделить всё
Option Explicit

Public Function initMatrix(ByVal Values As String)

    Dim m As Variant
    Dim n As Variant
    Dim i As Long
   
    n = Split(Values, ";")
    ReDim m(0 To UBound(n))
   
    For i = 0 To UBound(n)
        m(i) = Split(n(i), ",")
    Next
   
    initMatrix = m
    Erase n, m
End Function

Public Function test()
   
    Dim a As Variant
   
    a = initMatrix("1,2;3,4;5,6")
   
    Debug.Print a(1)(1)
   
End Function

В итоге получается массив массивов. Поэтому к нему такое нестандартное обращение - a(1)(1) вместо a(1, 1).

GoGosha
Постоялец
Постоялец
 
Сообщения: 642
Зарегистрирован: 02.08.2002 (Пт) 9:14
Откуда: Russia

Сообщение GoGosha » 07.08.2003 (Чт) 9:42

А CopyMemory, что уже запретили?
http://poetry.mooo.com
http://poetry.myboard.info
«Человек есть нечто, что до́лжно превзойти» (Ф. Ницше)

skiperski
Идеолог
Идеолог
Аватара пользователя
 
Сообщения: 1386
Зарегистрирован: 25.06.2002 (Вт) 15:52

Сообщение skiperski » 07.08.2003 (Чт) 10:36

Нет, не запретили, но я этим никогда не пользовался. Потому готового примера у меня нет. Зато у тебя есть возможность проиллюстрировать работу этой замечательной функции и подарить страждущим.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

    TopList