![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 | |
Старожил
Регистрация: 12.11.2010
Сообщений: 8,568
|
![]()
Здравствуйте!
У меня возникает проблема, с которой я не могу разобраться самостоятельно. Дело в том, что у меня есть запись, одним из полей которой является элемент типа TStringList. Код:
Код:
Код:
Таким образом, проблем здесь не возникает. Проблемы же начинаются далее, когда, как было написано в названии темы, пытаюсь выделить для поля QuestionText (см. выше) память. Поскольку Это поле принадлежит записи Question, вернее, элементам этого массива, то есть записи, то проблемная операция выглядит следующим образом: Код:
Здесь написано: для t-го элемента массива записей Question, его поля QuestionText (типа TStringList) выделить память. Возникает ошибка: Цитата:
Код:
Подскажите мне, в чёму меня дело, пожалуйста. Заранее благодарю! |
|
![]() |
![]() |
![]() |
#2 |
Сливочное масло
Участник клуба
Регистрация: 01.01.2011
Сообщений: 1,149
|
![]()
Лень было всё читать но могу сказать:
Код:
Сливочное масло Valio - компиляция как по маслу
|
![]() |
![]() |
![]() |
#3 |
Старожил
Регистрация: 12.11.2010
Сообщений: 8,568
|
![]()
Valio Спасибо большое тебе.
Вот какой я забывчивый или невнимательный. Я же в прошлом модуле работал с типом СтрингЛист, и там я делал всё правильно, а тут что-то забыл... может устал я просто, мозги забиты. Хотя в прошлом модуле вместо динамических массивов были однонаправленные списки, но это сути не меняет. А может, это из-за того, что я с этим типом недавно знаком?... Забаните меня за невнимательность ![]() |
![]() |
![]() |
![]() |
#4 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
<переменная>:=<имя класса>.<имя конструктора>(<параметры>); Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
![]() |
![]() |
![]() |
#5 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,899
|
![]()
а я ещё наблюдаю странную штуку - массив динамический, нумерация, естественно, с 0, а inc(t) происходит до обращения к t-ому элементу массива questions, т.е. может сложится обращение questions[1] хотя длина массива может быть тоже 1, и, соответственно, индекс первого элемента массива будет не 1 а 0 !
хотя, конечно, всего кода я не наблюдаю, и точно быть увереным не могу. коли желаем, могу поделиться мыслями по поводу написания экзаменатора, у самого сурьезноспроектированный оный... и, да, первый совет - мешанина из рекордов, массивов, классов и переменных достаточно неприглядная (( взять уж хотя бы переменную stringsamount при живом stringlist'e , вот не уследили Вы в коде , и количество строк в самом стринглисте может быть изменено, а переменная stringsamount нет, и что тогда ? если уж делаете классы, то делайте классы.. Tcollection и Tlist Вам в помощь Последний раз редактировалось phomm; 28.05.2011 в 08:09. |
![]() |
![]() |
![]() |
#6 | ||
Старожил
Регистрация: 12.11.2010
Сообщений: 8,568
|
![]()
phomm
Цитата:
Таким образом, нумерация динамического массива будет всегда с нуля... если я вас праивльно понимаю... Цитата:
|
||
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка доступа при выделении памяти в чужом процессе | Neoteric | Общие вопросы Delphi | 21 | 06.12.2010 16:50 |
Создание класса с полем типа TStringList. Ошибка при его заполнении | Son | Общие вопросы Delphi | 8 | 13.04.2010 21:38 |
Ошибка при очистке динамического массива. | S_Yevgeniy | Помощь студентам | 4 | 24.12.2009 18:45 |
почему может возникать ошибка access violation...: write of address при создании динамического массива | sleevman | Помощь студентам | 16 | 03.11.2009 20:49 |
Удаление элемента динамического массива | Dogmat | Помощь студентам | 6 | 13.07.2008 14:33 |