Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.11;
Скачать: CL | DM;

Вниз

"Тонкости" применения Variant   Найти похожие ветки 

 
DeepProg   (2005-06-15 17:32) [0]

Приложение консольное.
Вот процедура, которая работает некорректно:

type Waste = array of array of variant;
...
procedure MakeRep(wItems:Waste;WLength:integer;var report: string);
var i:integer;
begin
for i := 0 to WLength do report:=report+#10#13+ wItems[i,0];
end;

wItems[i,0] - это строка
Программа вылетает с ошибкой, когда я ее запускаю уже вне IDE.
(модно я дамп памяти приводить не буду?)
Если debug-ить по шагам в IDE, то почему-то пропускаются все 3 процедуры writeln (вывод двух строковых констант и, собственно, содержимого report), идущие после выполнения MakeRep, но зато выполняется последняя read. И при этом report заполнена правильно - watch позволяет ее увидеть.
Мне удобно использовать variant в Waste - второе поле integer, которое используется ранее.
Проблема явно с ним, но что я сделал не так или здесь особенности применения variant?


 
ferr ©   (2005-06-15 17:37) [1]

Я не понял зачем Variant?


 
Digitman ©   (2005-06-15 18:00) [2]


> особенности применения variant


variant он и в африке variant.
никаких особенностей.


 
DeepProg   (2005-06-22 07:58) [3]

Модеры, sorry за flood, но пусть народ развлечется
Перенесите это в треп :)))
Хорошо, что Подгорецкий этого пока не видел
Угадайте почему программа приходит в последнюю точку пропуская несколько операторов после выполнения вышеозначенной процедуры?
Подсказка: ошибка Access Violation в этой процедуре.

ЗЫ Снимаю с себя ответсвенность за смерть некоторых товарищей от смеха
ЗЗЫ В итоге Variant оказался не нужен


 
Rule ©   (2005-06-22 09:57) [4]

DeepProg   (22.06.05 7:58) [3]
помоему жестоковато ты отвечаешь, не дай бог чтоб ты чему то учился и вместо того чтоб тебе подсказать, на тебя так нападали ....


 
Rule ©   (2005-06-22 09:58) [5]

DeepProg   (15.06.05 17:32)
а зачем тебе вариант ? аргуменитируй ...


 
ЮЮ ©   (2005-06-22 10:00) [6]

>а зачем тебе вариант ? аргуменитируй ...

Чтобв не только AV получать, но и Ошибки преобразования типов :)


 
Anatoly Podgoretsky ©   (2005-06-22 10:03) [7]

DeepProg   (22.06.05 07:58) [3]
Ошибаешься видел


 
evvcom ©   (2005-06-22 14:17) [8]


> Подсказка: ошибка Access Violation в этой процедуре.

Скорее Range Checking Error

> DeepProg
Зачем тебе WLength? Используй Length(wItems) и не забудь 1 отнять.


 
DeepProg   (2005-06-22 14:54) [9]

Будем считать, что отгадали
Победа за [b]eevcom (с)[/b]
[i]>не забудь 1 отнять[/i]
2 [b]ЮЮ[/b]
[i]>Ошибки преобразования типов[/i]
аргументируй


 
ЮЮ ©   (2005-06-23 09:57) [10]

>аргументируй

Если переменная Variant, то в ней успешно может храниться и число.

И что в этом случае получишь на
 report := report+#10#13+ wItems[i,0] ?


 
DeepProg   (2005-06-24 13:29) [11]

see top
> wItems[i,0] - это строка
Ладно. Хватит препираться.
Тема закрыта.


 
Anatoly Podgoretsky ©   (2005-06-24 14:56) [12]

DeepProg   (24.06.05 13:29) [11]
Не имеешь права.



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

Текущий архив: 2005.07.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.042 c
11-1101407549
Clipper Chip
2004-11-25 21:32
2005.07.11
KOL и DelphiX


8-1111215430
vaa20003
2005-03-19 09:57
2005.07.11
OLE


14-1118033869
boalse
2005-06-06 08:57
2005.07.11
Способы регистрации программ


1-1118583202
Earth
2005-06-12 17:33
2005.07.11
Time


1-1119340554
Misha Uskov
2005-06-21 11:55
2005.07.11
Кнопки MDIChild при максимизации





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский