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

Вниз

Exception в TObjectList при Add, из-за чего может быть?   Найти похожие ветки 

 
Kolan ©   (2007-09-17 12:16) [0]

Здравствуйте,
 Есть такой класс:
 TCustomDomainObjectList = class(TObjectList)
 private
   function GetItem(Index: Integer): TCustomDomainObject;
   procedure SetItem(Index: Integer; const Value: TCustomDomainObject);
 public
   constructor Create;
   function Add(DomainObject: TCustomDomainObject): Integer;
   property Items[Index: Integer]: TCustomDomainObject read GetItem
     write SetItem; default;
 end;


function TCustomDomainObjectList.Add(
 DomainObject: TCustomDomainObject): Integer;
begin
 Result := inherited Add(DomainObject);
end;


Не могу понять почему при добавлении возникает Access Violation. Трассировка показала что возникает он здесь:
function TList.Add(Item: Pointer): Integer;
begin
 Result := FCount;
 if Result = FCapacity then
   Grow;
 FList^[Result] := Item;
 Inc(FCount);
 if Item <> nil then
   Notify(Item, lnAdded);
end;


 
Kolan ©   (2007-09-17 12:22) [1]

Блиин, экземпляр был не создан, забыл inherited&#133


 
Вася Правильный   (2007-09-17 12:23) [2]

а зачем новый класс без внесения ничего нового в него, кроме ошибок?


 
Anatoly Podgoretsky ©   (2007-09-17 12:24) [3]

> Kolan  (17.09.2007 12:16:00)  [0]

TCustomDomainObjectList создан.
Строки создания и вызова метода в студию.


 
Kolan ©   (2007-09-17 13:04) [4]

> Строки создания и вызова метода в студию.

Да разобрался уже, забыл inherited в середине иерархии классов, общий предок этой иерархии как раз и содержал поле типа  TCustomDomainObjectList&#133  Без inherited TCustomDomainObjectList не создавался &#151; отсюда AV



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

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

Наверх




Память: 0.47 MB
Время: 0.052 c
15-1189577904
Johnmen
2007-09-12 10:18
2007.10.14
Сверхзвуковая ударная волна


2-1190358163
Леван Варшанидзе
2007-09-21 11:02
2007.10.14
Как узнать IP аддресс текущего интернет-подключения?


1-1186038494
DevilDevil
2007-08-02 11:08
2007.10.14
Указатель на виртуальную функцию. Помогите.


2-1189972976
Lamer666
2007-09-17 00:02
2007.10.14
Проблема при переборе значений в ADOQuery


15-1190081676
Slider007
2007-09-18 06:14
2007.10.14
С днем рождения ! 18 сентября 2007 вторник