Пустой массив

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

Пустой массив

Сообщение ЗаикаБилл » 08.12.2004 (Ср) 17:53

У меня возвращается динамический массив типа Variant
Он может быть пустым - как это узнать

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 08.12.2004 (Ср) 17:54

Эээ. IsEmpty() пробовал? Вообще, это проблема...

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 08.12.2004 (Ср) 18:34

Пустой - это у которого UBound(v) < LBound(v) (ReDim-ом такого не создать, но ковыряясь в SAFEARRAY - можно).
Есть ещё неинициализированный, с которым проблема (у него нельзя взять UBound и LBound), но такого в Variant-е лежать не может.
Btw, проверить массив на неинициализированность можно, посмотрев его AryPtr (у неинициализированного будет 0)
Изображение

ЗаикаБилл
Начинающий
Начинающий
 
Сообщения: 8
Зарегистрирован: 23.10.2004 (Сб) 19:53

Ответ

Сообщение ЗаикаБилл » 08.12.2004 (Ср) 18:50

Спасибо Но есть Нюанс(как в анекдоте)
Я пишу на VB-script а в нём
isEmpty -для объектов
Ubound иногда вообще не возмешь(ошибку выдаёт)
AryPtr - такого вроде нет
tyomitch писал(а):Пустой - это у которого UBound(v) < LBound(v) (ReDim-ом такого не создать, но ковыряясь в SAFEARRAY - можно).
Есть ещё неинициализированный, с которым проблема (у него нельзя взять UBound и LBound), но такого в Variant-е лежать не может.
Btw, проверить массив на неинициализированность можно, посмотрев его AryPtr (у неинициализированного будет 0)

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 08.12.2004 (Ср) 18:51

В VBS действительно нет... Переходи на VB ;-)
Изображение

ЗаикаБилл
Начинающий
Начинающий
 
Сообщения: 8
Зарегистрирован: 23.10.2004 (Сб) 19:53

Сообщение ЗаикаБилл » 08.12.2004 (Ср) 19:01

Работа блин никуда не деться ,где платят там имузыку заказывают
:)
Щаз попробовал метод On Error Resume -
помогает
tyomitch писал(а):В VBS действительно нет... Переходи на VB ;-)

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 08.12.2004 (Ср) 19:14

Разговаривают два наркомана:
- прикинь, я вчера Ctrl-V попробовал...
- ну и как?
- вставляет.

:-)
Изображение


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

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

Сейчас этот форум просматривают: SemrushBot и гости: 9

    TopList  
cron