Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Einer Variable/Konstanten mehrere Werte zuweisen


LuGo - Di 02.02.10 13:04
Titel: Einer Variable/Konstanten mehrere Werte zuweisen
Hallo,

kann ich Variablen/ Konstanten in den Verienbarungen oder erst später im "Programmiertext" versch. Werte geben?

Nehmen wir zum Bsp. ein Feuerwehrfahrzeug. Alle haben die Farbe Rot und haben meistens Vier Räder. Sie haben unterschiedlich viel Wasser im Tank, sie sind unterschiedlich besetzt. Einige haben Sonderaufgaben wie die Technische Hilfeleistung nach Stürmen oder Verkehrsunfällen. Alle fahren untersch. schnell.

Ich hoffe es ist klar geworden, was ich meine.

MfG

LuGo


Xion - Di 02.02.10 13:22

user profile iconLuGo hat folgendes geschrieben Zum zitierten Posting springen:

Ich hoffe es ist klar geworden, was ich meine.

nö ^^

Hört sich an wie ne Übungsaufgabe für Klassen :D


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
type TFeuerwehrfahrzeug=class
  private
     VWassertank: integer;
     VColor: integer;
  public
     property WasserTank: integer read VWasserTank write VWassertank;
     property Color: TColor read VColor;  //readonly


     constructor Create;
end;

constructor TFeuerwehrfahrzeug.Create;
begin
  //defaultWerte
  VColor:=clRed; 
  WasserTank:=100
end;


Und dann so aufrufen:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
procedure  ...
var FZ1,FZ2: TFeuerwehrfahrzeug;
begin
  FZ1:=TFeuerwehrfahrzeug.Create;
  FZ1.WasserTank:=200;

  FZ2:=TFeuerwehrfahrzeug.Create;
  FZ2.WasserTank:=250;
end;


LuGo - Di 02.02.10 13:27

Vielen Dank.

Also wenn ich das jetzt richtig verstanden habe, muss ich mit Klassen arbeiten. Eine Frage hätt ich dazu dann noch. Sind Klassenwerte veränderbar?

MfG

LuGo


Critter - Di 02.02.10 13:49

Hallo,

wenn es nur um Werte geht, die du speichern willst, dann sollten auch Records reichen, die sind etwas einfacher zu handhaben.

Nach dem Beispiel von Oben:


Delphi-Quelltext
1:
2:
3:
4:
5:
Type
  TFeuerwehrfahrzeug = Record
     WasserTank: integer;
     Color: TColor;
  End;


In deinem Programm verwendest du es dann wie folgt:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
procedure Irgendwas;
  Var
    TatueTaTa : TFeuerwehrfahrzeug;
Begin
  TatueTaTa.Color := clRed;
  TatueTaTa.WasserTank := 500;
  {..}
End;



Am besten arbeitest du dich ein klein wenig in die Grundlagen ein, um besser entscheiden zu können, was für dich geeigneter ist. Hierbei kann die Christians Crash Kurs sicher weiterhelfen: http://www.christian-stelzmann.de/artikel/crashkurs.htm.

critter