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

Вниз

Переменное количество экземпляров класса   Найти похожие ветки 

 
DeScriptor   (2004-07-04 06:40) [0]

Необходимо создать переменное количество экземпляров класса. Точнее, во время выполнения программы их число постоянно, т.к. оно задается в начале, но сколько именно потомков класса будет - изначально неизветсно.
Я пробовал создать массив экземпляров:
var ArrayOfClassInstances: array[1] of TMyClass;
...
begin
...
ArrayOfClassInstances[1].Create();
end;

При этом, при попытке присвоить какое-либо значение созданному объекту, или при попытке выполнить какой-либо его метод, возникает ошибка нарушения доступа.
Второй вариант, который мне приходил в голову - попробовать создавать переменные с числовым индексом (MyVal01, MyVal02 и т.д.), но как реализовать такую систему - не знаю. Вообще, можно ли создавать во время выполнения переменную, название которой не является константой? По-моему, нет.

Подскажите, плз, как мне разрешить дануую ситуацию?


 
TUser ©   (2004-07-04 07:01) [1]

Надо посмотреть в справке про
1. Как вызывать конструкторы и что это такое.
2. как работать с дин. массивами.


 
Григорьев Антон ©   (2004-07-04 07:02) [2]

Во-первых, надо применять динамические массивы. Во-вторых, читайте справку внимательнее: вы неправильно создаёте компонент. Правильно его создавать так:

ArrayOfClassInstances[1]:=TMyClass.Create();

И почитайте вот это: http://www.delphikingdom.com/asp/viewitem.asp?catalogid=342


 
DeScriptor   (2004-07-04 07:32) [3]

Огромное спасибо!!! Я действительно просто невероятно ступил: забыл, что вначале надо устроить операцию присваивания!



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

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

Наверх




Память: 0.47 MB
Время: 0.19 c
14-1088388530
Думкин
2004-06-28 06:08
2004.07.18
С днем рождения! 27 июня


6-1084824796
Федя Мегатронов
2004-05-18 00:13
2004.07.18
Неконнектиться к pop3 .. в чём может быть проблема ?


3-1087769417
Newb
2004-06-21 02:10
2004.07.18
Проблема с DBCheckBox


3-1087464074
souLLamer
2004-06-17 13:21
2004.07.18
Помогите преобразовать Date -> Integer и обратно.


3-1087974347
SergP
2004-06-23 11:05
2004.07.18
Oracle. Вопрос про Create tablespace.