Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.07.23;
Скачать: [xml.tar.bz2];

Вниз

Массив типа Variant   Найти похожие ветки 

 
Gerasym   (2006-07-03 16:31) [0]

В процессе написания софтинки столкнулся с ошибкой:
"Variant or safe array index out of bounds"
(выбивает в самом начале цикла по сравнению 2х массивов)
Уважаемы знатоки подскажите пожалуйста - какие существуют на него ограничения?
Массив на ~900 значений сравнивается с массивом на ~11000 значений.
Может есть ограничение на длинну массива?


 
icWasya ©   (2006-07-03 16:40) [1]

ну а выход за границу массива не проверяешь??


 
Gerasym   (2006-07-03 16:47) [2]

А как? Да и вылет в происходит в самом начале цикла, следовательно я в начале массива и нахожусь


 
Gerasym ©   (2006-07-03 17:00) [3]

Опишу подробнее
Имеется 2 массива
ArrayData := VarArrayCreate([1,Rows,1,2], varVariant);
ArrayData2:= VarArrayCreate([1,Rows2], varVariant);
Rows - кол-во использованных строк в Книге Эксель
Первый массив из одного файла, второй - из другого заполняется диапазоном значений. Потом начинается цикл сравнения значений первого массива и второго.
for i:=1 to rows do
for j:=1 to rows2 do
if ArrayData[i,1]=ArrayData2[j] then ArrayData2[j]:=0

В самом начале цикла вылетаю с ошибкой :(


 
Ega23 ©   (2006-07-03 17:12) [4]

Индесация не с нуля ли начинается?


 
Gerasym ©   (2006-07-03 17:14) [5]

что с 0 цикл начинать что с 1 - результат тот же :(


 
Германн ©   (2006-07-03 17:22) [6]


> что с 0 цикл начинать что с 1 - результат тот же :


А заканчивать rows или rows-1 есть разница? :-)


 
Gerasym ©   (2006-07-03 17:24) [7]

Дык в начале цикла то выбивает :)))


 
Gerasym ©   (2006-07-03 17:27) [8]

Что значит Safe Array Index? Безопасный индекс массива?


 
Германн ©   (2006-07-03 17:31) [9]


> Да и вылет в происходит в самом начале цикла, следовательно
> я в начале массива и нахожусь


Не очевидно. Посмотри под отладчиком.


 
Gerasym ©   (2006-07-03 17:32) [10]

Посмотрел :) как только происходит инициализация цикла - сразу эта ошибка


 
Германн ©   (2006-07-03 17:34) [11]


> Посмотрел :) как только происходит инициализация цикла -
>  сразу эта ошибка


И чему в этот момент равна переменная цикла?


 
Gerasym ©   (2006-07-03 17:41) [12]

в зависимости от того с чего начну цикл... если с 0 то 0, если 1 - то соответственно 1 :)


 
Германн ©   (2006-07-03 17:48) [13]


> в зависимости от того с чего начну цикл... если с 0 то 0,
>  если 1 - то соответственно 1 :)


Это ты увидел под отладчиком или предполагаешь?


 
Gerasym ©   (2006-07-03 17:49) [14]

Я же написал что посмотрел


 
tesseract ©   (2006-07-03 17:50) [15]


> Что значит Safe Array Index? Безопасный индекс массива?


SafeArray - такое ole-шный тип данных.

> Посмотрел :) как только происходит инициализация цикла -
>  сразу эта ошибка

А массив инициализирован?


 
Gerasym ©   (2006-07-03 17:55) [16]

Массив инициализирован и заполнен данными
У SafeArray нету ограничений на длинну?


 
Gerasym ©   (2006-07-03 18:31) [17]

Все :) нашел в чем дело...
Массив я неправильно создавал
ArrayData2:= VarArrayCreate([1,Rows2], varVariant); неправильный
ArrayData2:= VarArrayCreate([1,Rows2,1,1], varVariant); правильный
ура товарищи :)
Всем кто помогал спасибо :)



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.07.23;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.012 c
2-1152011001
Elfebet
2006-07-04 15:03
2006.07.23
Как узнать находится ли мышка на форма или нет?


6-1142107910
Daimyo
2006-03-11 23:11
2006.07.23
кодировка и indy


2-1152103069
rra
2006-07-05 16:37
2006.07.23
Как можно создать ссылку на файл, разместив ее в ячейке DBGrid a?


5-1135878695
doppel
2005-12-29 20:51
2006.07.23
Редактирование компоненты


1-1149682763
mmms
2006-06-07 16:19
2006.07.23
Как послать сообщение элементу, будто над ним находится мышь?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский