Einzelnen Beitrag anzeigen

r2c2

Registriert seit: 9. Mai 2005
Ort: Nordbaden
925 Beiträge
 
#3

AW: Aufbau eigene Klasse mit Property und TStrings

  Alt 30. Dez 2010, 12:37
- Methodennamen (auch Create und Destroy) werden in Delphi per Konvention Groß geschrieben

Zitat:
nicht sicher, ob ich dort meine TStringliste.Create und .Free einbinden kann.
Das ist genau richtig so.


Zitat:
Desweiteren würde ich mal gerne wissen, ob ich über die Property nicht auch einen Record übergeben kann. Dies wäre den Daten die ich übergeben will näher.
Ja das geht und ist manchmal sogar sinnvoll. Meistens eben da, wo die Records Wertetypen darstellen. Tun sie das nicht, denkst du vermutlich noch zu prozedural.


Delphi-Quellcode:
    TMB100 = class
      constructor create;
      destructor destroy;
Die beiden bitte unter public und bei Destroy *immer* override angeben.

      FFarbe : array [1..4] of TColor; Ich kenn deine Klasse nicht, aber warum genau 4? Haben die Zahlen ne tiefere Bedeutung?


      FComPortProperty : TStrings; Der Bezeichner scheint mir unglücklich gewählt. Es wird nicht klar, was das darstellt und warum das nun ein TStrings ist.


property ComPortPropertys: TStrings read GetComPortPropertys write FComPortProperty; Dazu würde ja schon was gesagt.


Delphi-Quellcode:
function TMB100.GetComPortPropertys : Tstrings;
begin
  Result := FComPortProperty;
end;
Das solltest du dir genau überlegen. Du gibst damit die Interne Repräsentation nach außen. Das kann lustige Aliasing-Effekte nach sich ziehen. Sag mal mehr zu der Property.


Delphi-Quellcode:
procedure TMB100.SetColor(Nr : integer; SetFarbe : TColor);
begin
  FFarbe[Nr] := SetFarbe
end;

function TMB100.GetColor(Nr : integer) : TColor;
begin
  Result := FFarbe[Nr];
end;
Was ist, wenn der Index nicht passt?


mfg

Christian
Kaum macht man's richtig, schon klappts!
  Mit Zitat antworten Zitat