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

Вниз

Странность в Delphi 2005   Найти похожие ветки 

 
Чапаев ©   (2005-10-25 10:54) [0]

Есть такой код:

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;

type
 TMy=class(TWinControl)
 private
   AEdit:TEdit;
   ALabel:TLabel;
 public
   constructor Create(AOwner:TComponent);override;
   destructor Destroy;override;
 end;
 TForm1 = class(TForm)
   procedure FormCreate(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
   M:TMy;
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
 M:=TMy.Create(Self);
end;

{ TMy }

constructor TMy.Create(AOwner:TComponent);
begin
 inherited;
 AEdit:=TEdit.Create(nil);
 ALabel:=TLabel.Create(nil);
end;

destructor TMy.Destroy;
begin
 AEdit.Free;
 ALabel.Free;
 inherited;
end;

end.



В Делфи7 всё работает, в Делфи2005 выскакивает AV при выполнении AEdit.Free. Кто-нить может объяснить, в чём проблема?


 
Igorek ©   (2005-10-25 11:02) [1]

Так 2005 Делфи - это ж под дотнет вроде. Там же автоматическая сборка мусора. Соотв. нету явных вызовов деструкторов - можно просто написать AEdit := nil вместо AEdit.Free.


 
Чапаев ©   (2005-10-25 12:07) [2]


> Так 2005 Делфи - это ж под дотнет вроде

Не знаешь -- лучше не подсказывай. 2005 содержит средства разработки и под Вин32, и под .НЕТ. В данном случае программа пишется под Вин32.


 
Чапаев ©   (2005-10-25 12:10) [3]

Да и если всё же принять версию про автоматическую сборку мусора, почему тогда ALabel.Free срабатывает нормально?


 
Igorek ©   (2005-10-25 12:16) [4]


> Не знаешь -- лучше не подсказывай.

Прости, я хотел помочь - написал что знал.. Но теперь думаю - без меня ты лучше разберешься.


 
Игорь Шевченко ©   (2005-10-25 15:35) [5]


> в Делфи2005 выскакивает AV при выполнении AEdit.Free


Не выскакивает.



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

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

Наверх




Память: 0.47 MB
Время: 0.043 c
15-1144227742
sergeii
2006-04-05 13:02
2006.04.23
Pocket PC


15-1144163686
RDA
2006-04-04 19:14
2006.04.23
Запуск Microsoft Word 2003 при установленном Microsoft Visual C#


15-1143993758
ArtemESC
2006-04-02 20:02
2006.04.23
С помощь чего можно...


15-1143832767
Новочеркасский Волк
2006-03-31 23:19
2006.04.23
Проводник удалённого компьютера.


1-1141889594
Ksenom
2006-03-09 10:33
2006.04.23
Всплывающие сообщения