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

Вниз

"Тонкости" применения 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.038 c
14-1118118178
Тульский
2005-06-07 08:22
2005.07.11
Word 2000 во всей красе


11-1100453600
Slay
2004-11-14 20:33
2005.07.11
Вопрос про Drag&Drop в TreeView


14-1118592501
Cerberus
2005-06-12 20:08
2005.07.11
Оцените дизайн


14-1118208485
Cosinus
2005-06-08 09:28
2005.07.11
Подскажите, как освободить виртуальную память


1-1118769268
sofs
2005-06-14 21:14
2005.07.11
кривые колонки в РичЭдит при большом рбъёме инфы





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