Einfaches Beispiel:Delphi XE6, 3D-Array von Datensätzen mit boolean Mitglied Feldern bauen nicht
type
TGm = record
Rm,Nc,Sc,Wc,Ec,Su,Sd:boolean;
end;
var
Dm: Array[1..20] of Array[1..20] of Array[1..20] of TGm;
Gm: TGm;
...
if (Dm(z,y-1,x).Ec) then Gm.Wc := TRUE;
Wenn ich versuche, zu bauen, dass letzte Zeile markiert und zwei Fehler angezeigt:
'$1' does not contain a member named 'Ec'
Type of expression must be BOOLEAN
Fehle ich etwas ganz einfach hier?
Und, ja, ich bin Erzeugen eines Dungeon ;-)
Die Klammern ... äußerst einfach, ja. Der Compiler-Fehler ist jedoch seltsam ... –
@Sertac: Ich denke, der Compiler sieht es als eine Art anonymer Typ, intern namens '$ 1', wahrscheinlich die interne primäre Zeile des Dm-Typs. Ich vermute, das liegt daran, dass die Deklaration 'array [] von array [] von array [] of ... 'ist, was ungewöhnlich ist. Normalerweise haben Sie 'array [.., .., ..] of ...'. –