Announcement

Collapse
No announcement yet.

Was is das für ein Error beim Compilen ?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Was is das für ein Error beim Compilen ?

    Tach all,

    Also ich schreib hier zum ersten Mal und naja bin eigentlich nichtso der Coder, sondern eher so Schulcoder. Zur Zeit müssen wir ein Schachspiel proggen, doch da ergab sich bei mir ein Fehler, den ich nicht verstehe zu lösen (was ein Deutsch *g*).
    <PRE>1 unit Unit1;
    2
    3 interface
    4
    5 uses
    6 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, 7 Forms,
    8 Dialogs, Grids;
    9
    10 type
    11 TForm1 = class(TForm)
    12 BrettStringGrid: TStringGrid;
    13 procedure FormCreate(Sender: TObject);
    14 end;
    15
    16 TForm = (Turm, Springer, Laeufer, Dame, Koenig, Bauer, Leer);
    17 TFarbe = (Weiss, Schwarz, Keine);
    18 TSpalte = (a, b, c, d, e, f, g, h);
    19 TZeile = 1..8;
    20 TFigur = record
    21 form : TForm;
    22 farbe : TFarbe;
    23
    24 private
    25 { Private declarations }
    26 public
    27 { Public declarations }
    28 end;
    29 var
    30 Form1: TForm1;
    31
    32 implementation
    </PRE>
    Also wie man sieht hab ich neue Typen vereinbart. Doch beim compilen erhalte ich folgende Errors:

    [Error] Unit1.pas(25): ',' or ':' expected but identifier 'public' found

    [Error] Unit1.pas(27): ',' or ':' expected but 'END' found

    Bitte kann mir einer sagen, was da geändert werden muss?
    Wäre echt dankbar.

    CeYa

  • #2
    <i>6 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, 7 Forms, </i><br>
    Ich nehme an, die "7" ist im echten Code nicht drin?
    <p>
    Die Zeilen 10-28 sollten prinzipiell erstmal eher so lauten:<pre>
    type
    TForm = (Turm, Springer, Laeufer, Dame, Koenig, Bauer, Leer);
    TFarbe = (Weiss, Schwarz, Keine);
    TSpalte = (a, b, c, d, e, f, g, h);
    TZeile = 1..8;
    TFigur = record
    form : TForm;
    farbe : TFarbe;
    end;

    TForm1 = class(TForm)
    BrettStringGrid: TStringGrid;
    procedure FormCreate(Sender: TObject);
    private
    { Private declarations }
    public
    { Public declarations }
    end;
    </pre>
    Außerdem solltest du dir für deinen Form-Aufzählungstyp dringend einen anderen Namen als TForm zulegen, weil der nämlich schon vergeben ist. (Hinweis: siehe Zeile 11 :-))
    <br>Ciao, Uli

    Comment


    • #3
      Cool ...

      Big Thx an dich Uli.
      Jetzt funtz es !

      CeY

      Comment


      • #4
        Gern geschehen. :-)<br>
        Überleg dir aber trotzdem nochmal, was denn an deinem Code jetzt eigentlich falsch war -- was hat alles zur Definition des Typs TForm1 gehört, was *hätte* dazugehören sollen, wozu hat in deiner Version der Compiler das public/protected-Geraffel gerechnet? Und wie ist er zu der komischen Fehlermeldung gekommen?<br>Ciao, Uli

        Comment

        Working...
        X