Форумы-->Форум для внеигровых тем-->
Автор | Object pascal |
может кто нибудь привести пример деструктора, если класс имеет атрибуты - integer, string, pointer | кто-нибудь обязательно может | деструктора,???
Может Дезтроук?
http://www.dcplanet.fr/wp-content/uploads/2014/01/Arrow-Deathstroke.png | деструктора,???
Может Дезтроук?
Вы издеваетесь? Деструктор - это функция ждя удаления экземпляра класса. По теме: могу завтра привести пример для ABC.NET, на Opject не работал | для Аней:
Я думал ТС имеет веду его, я просто импровизировал т.к. не был осведомлён в данном вопросе. | Я думал ТС имеет веду его, я просто импровизировал т.к. не был осведомлён в данном вопросе.
Ясно, извините. Но лучше даже не садитесь за изучение классов - они поначалу могут попросту вынести мозг:) | для Аней:
я понимаю деструктор на с++, немного липовый на питоне, просто одна лабораторная по этому языку, тут издевательство над ООП,,, но надо,,, нашел примеры типа
destructor object.destroy
begin
end;
или
begin
FreeMem(Value, Len);
end;
но это не то,,, как освободить значение? можно поинтер отправить в nil, но мне нужен праильный, логический вариант | Я на Паскале уже больше года не программирую, но вот нашел старую лабу по классу-списку, может вам поможет, а то на ночь мне совсем не думается:)
procedure Delm(nomer:integer);
var Rm_ykaz,ykazatel: ^data<Y>;
begin
proverka_nomera(nomer);
if nomer = 1 then
begin
Rm_ykaz:=PNTFirst;
PNTFirst:=Rm_ykaz^.Link;
dispose(Rm_ykaz);
end
else
begin
if nomer=Cnt then
begin
Rm_ykaz:=element(cnt-1);
dispose(Rm_ykaz^.Link);
Rm_ykaz:=nil;
end
else
begin
Rm_ykaz:=element(nomer-1);
ykazatel:=Rm_ykaz^.Link^.Link;
dispose(Rm_ykaz^.Link);
Rm_ykaz^.Link:=ykazatel;
end;
end;
Cnt-=1;
end;
destructor Destroy();
begin
for var i:= 1 to cnt do
begin
Delm(cnt);
end;
end;
end; | тема закрыта by lucshiiiulian (2014-02-07 00:17:57) |
---|
К списку тем
|