Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Сравнение массивов в VB6 / 4 сообщений из 4, страница 1 из 1
17.10.2002, 17:55
    #32059380
Oers
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение массивов в VB6
Как можно сравнить в VB6 два массива с одинаковой структурой?
Упрощенно проблема выглядит следующим образом:
Создан пользовательский тип из 35 полей и созданы два массива по этому пользовательскому типу.
Дело в том, что если сравнивать каждый элемент массива по принципу
if a.1<>b.1 or _
a.2 <>b.2 or _
............
a.35 <>b.35 then ....

то VB6 имеет ограничение ( ошибка "Too many line continuations ") в 25 связанных строк или в 24 элемента в одной строке.
...
Рейтинг: 0 / 0
18.10.2002, 08:42
    #32059473
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение массивов в VB6
VB под руками нет, потому ничего не гарантирую, но принцип стар как мир:
..
dim i, n as Integer
dim flag as Boolean
n=ubound(a)
flag=True
if ubound(b)=n then
for i=1 to n
if a(i)<>b(i) then
flag=False
exit for
end if
next i
end if
...
Рейтинг: 0 / 0
18.10.2002, 08:44
    #32059477
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение массивов в VB6
oops..
Эти две строчки надо поменять местами:
flag=True
if ubound(b)=n then
то есть:
flag=False
if ubound(b)=n then
flag=True
'дальше цикл
...
Рейтинг: 0 / 0
18.10.2002, 09:28
    #32059488
Oers
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение массивов в VB6
Спасибо, все действительно оказалось просто.... Правда уже появились мысли как обойти это сравнение в реальной задаче, но и это буду учитывать.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Сравнение массивов в VB6 / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]