[Back to OOP SWAG index] [Back to Main SWAG index] [Original]

    {
      I am trying to teach myself about Object orientated Programming and about
    'inheritence'. This is my code using Records.

    Have a look at 'Mastering Turbo Pascal 6' by tom Swan, pg. 584 and on.
    Briefly, without Objects, code looks like this:
    }

    DateRec = Record
      Month: Byte;
      day:   Byte;
      year:  Word;
    end;

    Var
      today: DateRec;

    begin
      With today do
      begin
       month:= 6;
       day  := 6;
       year := 1992;
      end;
    ...
    more code..
    end.

    With Objects, code looks like this:

    Type
      DateObj = Object
        month: Byte;                   {note data and methods are all}
        day:   Byte;                   {part of the Object together  }
        year:  Word;
        Procedure Init(MM, DD, YY: Word);
        Function StringDate: String;
      end;

    Var
      today: DateObj;

    Procedure DateObj.Init(MM, DD, YY: Word); {always need to initialise}
    begin
      Month:= MM;
      Day  := DD;
      year := YY;
    end;

    Function DateObj.StringDate: String;
    Var
      MStr, Dstr, YStr: String[10];
    begin
      Str(Month, MStr);
      Str(Day, DStr);
      Str(Year, YStr);
      StringDate := MStr + '/' + DStr + '/' + YStr
    end;

    begin         {begin main Program code}
      today.Init(6,6,1992);
      Writeln('The date is ', today.StringDate)
      Readln
    ..
    other code..
    end.

    Hope this helps.  Read all the example code you can, and try the Turbo-
    vision echo (not yet on Fidonet, but nodes were listed on here
    recently).  You can fidonet sysop Pam Lagier at TurboCity BBS 1:208/2
    For a node list.

[Back to OOP SWAG index] [Back to Main SWAG index] [Original]