Более правильный вариант. Во FreePascal следует включить режим компиляции objfpc и подключить модуль Classes.
//{$ifdef fpc} {$mode objfpc} //{$endif} //{$ifdef MSWINDOWS}{$apptype console}{$endif} uses Classes; type myclass = class(TObject) private a,b: byte; public procedure print; constructor create(c,d:byte); end; constructor myclass.create(c,d:byte); begin //inherited Create; a:=c; b:=d end; procedure myclass.print; begin writeln(a); writeln(b) end; var obj: myclass; begin obj:=MyClass.Create(8,29); obj.b := 200; obj.print; obj.a := 100; writeln(obj.a); obj.free; readln; end.
Другой вариант - через указатель. Менее предпочтительный но описывается в большинстве учебников.
type pmyclass = ^myclass; myclass = object a,b: byte; procedure print; constructor Init(c,d:byte); end; constructor myclass.Init(c,d:byte); begin a:=c; b:=d end; procedure myclass.print; begin writeln(a); writeln(b) end; var obj: pmyclass; begin obj := new(pmyclass,Init(10,30)); obj^.print; dispose(obj); readln; end.
Последние комментарии
2 дня 10 часов назад
5 дней 13 часов назад
5 дней 21 час назад
6 дней 4 часа назад
6 дней 10 часов назад
1 неделя 17 часов назад
1 неделя 3 дня назад
1 неделя 3 дня назад
1 неделя 4 дня назад
1 неделя 5 дней назад