Есть класс, в классе есть свойства, функции, структуры и т.п. Нужно сделать набор таких классов (Количество заранее не известно) В итоге должно получиться что-то типа VisualBasic'овского Collection или Некоторое подобие класса TStringList, только вместо AnsiString — мой класс.
Хотел сделать с через динамический массив, но при попытке положить в него че-нить он пишет Access Violation. Что делать? Может я как-то не правильно объявляю массив? Помогите, кто может. Заранее благодарен.
Здравствуйте, Rogov_Peter, Вы писали:
R_P>Помогите пожалуйста!
R_P>Есть класс, в классе есть свойства, функции, структуры и т.п. Нужно сделать набор таких классов (Количество заранее не известно) В итоге должно получиться что-то типа VisualBasic'овского Collection или Некоторое подобие класса TStringList, только вместо AnsiString — мой класс. R_P>Хотел сделать с через динамический массив, но при попытке положить в него че-нить он пишет Access Violation. Что делать? Может я как-то не правильно объявляю массив? Помогите, кто может. Заранее благодарен.
есть вопрос, почему не использовать контейнеры от STL?
в них можно записывать объекты классов, правда, придется реализовать (если еще не реализовано) конструктор копирования, оператор присваивания и оператор сравнения, по-моему.
Здравствуйте, Rogov_Peter, Вы писали:
R_P>Помогите пожалуйста!
R_P>Есть класс, в классе есть свойства, функции, структуры и т.п. Нужно сделать набор таких классов (Количество заранее не известно) В итоге должно получиться что-то типа VisualBasic'овского Collection или Некоторое подобие класса TStringList, только вместо AnsiString — мой класс. R_P>Хотел сделать с через динамический массив, но при попытке положить в него че-нить он пишет Access Violation. Что делать? Может я как-то не правильно объявляю массив? Помогите, кто может. Заранее благодарен.
Используй vector из STL. Это наименее запарный вариант для динамических массивов.
А вообще, чтобы сказать, что ты делаешь неправильно, нужно народу код показать, не так ли?
Здравствуйте, Rogov_Peter, Вы писали:
R_P>Помогите пожалуйста!
R_P>Есть класс, в классе есть свойства, функции, структуры и т.п. Нужно сделать набор таких классов (Количество заранее не известно) В итоге должно получиться что-то типа VisualBasic'овского Collection или Некоторое подобие класса TStringList, только вместо AnsiString — мой класс.
Если хочется пользоватся VCL-классами, то RTFM по TList. Например:
Здравствуйте, Rogov_Peter, Вы писали:
R_P>Помогите пожалуйста!
R_P>Есть класс, в классе есть свойства, функции, структуры и т.п. Нужно сделать набор таких классов (Количество заранее не известно) В итоге должно получиться что-то типа VisualBasic'овского Collection или Некоторое подобие класса TStringList, только вместо AnsiString — мой класс. R_P>Хотел сделать с через динамический массив, но при попытке положить в него че-нить он пишет Access Violation. Что делать? Может я как-то не правильно объявляю массив? Помогите, кто может. Заранее благодарен.
Я использую динамические массивы в Delphi проблем пока не увидел....
Почему бы тебе не описать как
Type
TMyDynamicArrayCollection = Array of Pointer;
.....
//ДобавлениеVar a : TMyDynamicArrAyCollection;
SetLength(a,High(a)+1);
a[High(a)] := TmyClass.create;
// и т.д.
правда немного больше текста при удалении...
Но можно попробовать.
У меня такие массивы содержат структуры имеющие динамические массивы со структурами.....
Здравствуйте, Rogov_Peter, Вы писали: R_P>Есть класс, в классе есть свойства, функции, структуры и т.п. Нужно сделать набор таких классов (Количество заранее не известно) В итоге должно получиться что-то типа VisualBasic'овского Collection или Некоторое подобие класса TStringList, только вместо AnsiString — мой класс.
Есть такая вещь, как Standart Template Library (STL)
#include <vector>
std::vector<YourClass> Collection;
Collection.push_back(element);
Collection.resize(Num);
Collection[i]=element;
и прочее ......