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

Вниз

Нужна помощь со списком.   Найти похожие ветки 

 
Valentino   (2003-04-23 09:34) [0]

Доброго всем дня!

Значит, делаю так:

type Question = record
Vopros: widestring;
Otvets: TStringList;
end;
type Pstr=^Question;
var
Form1: TForm1;
Q: Question;
PQ: Pstr;
List1: TList;
...........


implementation

............
var s:string;

.......
List1:=TList.Create;
New(PQ);
PQ^:=Q;
List1.Add(PQ);
...
PQ^.Vopros:=Memo.Text;
PQ^.Otvets.Add(s);

Последняя строчка, где пытаюсь в StringList добавить, не работает вообще ни как (Access Violation...).
Подскажите, что я не так делаю?

Заранее Спасибо.


 
mrcat   (2003-04-23 09:36) [1]

[ TStringList] за Вас кто будет создавать?


 
Skier   (2003-04-23 09:47) [2]

>Valentino

Советую :
1) Заменить Vopros: widestring; на Vopros: string;
(если только widestring не используется для каких-то
"хитростей")
2) Объявлять типы по-человечески :
type TQuestion = record
qVopros: string;
qOtvets: TStringList;
end; //TQuestion
PQuestion = ^TQuestion ;
3) Написать потомок TList-а (чтобы св-во Items в нем было типа
PQuestion) - таким образом не придётся приводить типы каждый
раз при обращении к св-ву Items[Index]
4) САМОЕ ГЛАВНОЕ. СОЗДАВАТЬ ОБЪЕКТ qOtvets
т.е. тебе нужно написать так :

New(PQ);
//...........
PQ^.qOtvets := TStringList.Create;

НЕ ЗАБУДЬ ПОТОМ ОСВОБОДИТЬ ОБЪЕКТ qOtvets
PQ^.qOtvets.Free;


 
REA   (2003-04-23 10:00) [3]

TQuestion = Class(TStringList)
Private
FQuestionText: String;
Public
Constructor CreateQuestion(aText: String);
End;

TQuestions = Class(TObjectList)
End;

...

Questions.Add(TQuestion.CreateQuestion(Memo.Text));



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

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

Наверх





Память: 0.45 MB
Время: 0.006 c
6-12850
Volly
2003-03-11 16:31
2003.05.05
idHTTP


3-12644
vil
2003-04-16 10:10
2003.05.05
Есть ADOQuery1


3-12673
vick
2003-04-15 12:05
2003.05.05
Не число...


14-12920
DeMoN-777
2003-04-17 21:22
2003.05.05
Заметили новую звёздочку


4-12978
cult
2003-03-06 13:18
2003.05.05
Как загрузить ресурсы из DLL-ки?





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