AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Klasse mit Konstanten ?

Ein Thema von Neutral General · begonnen am 6. Sep 2005 · letzter Beitrag vom 9. Sep 2005
Antwort Antwort
Seite 3 von 5     123 45      
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.113 Beiträge
 
Delphi 11 Alexandria
 
#21

Re: Klasse mit Konstanten ?

  Alt 7. Sep 2005, 21:59
Moin Neutral General,

warum überhaupt Konstanten?
Wenn Du die Daten in einer Konfigurationsdatei ablegst, kannst Du die Einstellungen doch viel besser justieren, falls erforderlich.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
tigerman33

Registriert seit: 30. Jul 2005
Ort: München
423 Beiträge
 
Delphi 2005 Professional
 
#22

Re: Klasse mit Konstanten ?

  Alt 8. Sep 2005, 08:32
Und bei dem von dir beschriebenen Ziel sehe ich auch nicht die Notwendigkeit verschiedener Klassen. Im Gegenteil! Denn deine Runen unterscheiden sich ja nicht in der Struktur, sondern nur in ihren Eigenschaften: Häufigkeit, Farbe etc.

Das verschiedene Verhalten kann man dann auch über Methodeneigenschaften realisieren oder wie du gesagt hast, als eigenen Klassentyp. Aber für die Runen als solche sind verschiedene Klassen meiner Meinung nach kontraproduktiv und damit der falsche Ansatz.
Christian
Der Computer hilft mir, Probleme zu lösen, die ich ohne Computer nicht hätte.
  Mit Zitat antworten Zitat
Benutzerbild von Kroko1999
Kroko1999

Registriert seit: 21. Apr 2005
Ort: Spremberg
455 Beiträge
 
Turbo Delphi für Win32
 
#23

Re: Klasse mit Konstanten ?

  Alt 8. Sep 2005, 09:57
Mein Vorschlag:
Delphi-Quellcode:
type
  TRune = class
      constructor Create (ARarity: Integer);
    private
      FRarity: Integer;
      FColor: TColor;
    public
      property Color: TColor read FColor;
      property Rarity: Integer read FRarity;
  end;

constructor TRune.Create (ARarity: Integer);
begin
  FRarity := ARarity;
  case FRarity of
    0..3: FColor := clGreen;
    //etc.
  end;
end;
und beim Create übergibts Du die Rarity.
Da sprach der Stumme zum Blinden: "Du wirst sehen ..."
oder
Wer lesen kann, ist klar im Vorteil!
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#24

Re: Klasse mit Konstanten ?

  Alt 8. Sep 2005, 12:41
Nur die Rarity zu übergeben reicht ja nicht weil die Runen ja verschiedene Eigenschaften haben sollen.
Ich will halt so wenig wie möglich schreiben müssen um alle Runen mit ner Seltenheit und min 1 Property auszustatten...
Michael
  Mit Zitat antworten Zitat
Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#25

Re: Klasse mit Konstanten ?

  Alt 8. Sep 2005, 12:43
Und dafür schreibst du lieber ca. 100 Runenklassen? Was ist, wenn du beschließt, nochmal 100 weitere einzufügen? Dann nochmal 100 neue Klassen?
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#26

Re: Klasse mit Konstanten ?

  Alt 8. Sep 2005, 15:18
Ja ich bin halt ratlos ^^
Ich hab noch nie was in sonem Umfang gemacht..

EDIT : Ich seh grad meine "Funktion" -.- Ich glaube ich habe in der Eile da was falsch gemacht -.-
Michael
  Mit Zitat antworten Zitat
tigerman33

Registriert seit: 30. Jul 2005
Ort: München
423 Beiträge
 
Delphi 2005 Professional
 
#27

Re: Klasse mit Konstanten ?

  Alt 8. Sep 2005, 18:19
Hört mir eigentlich irgendjemand zu? Wenn nicht, weise ich auf meine beiden letzten Posts hin. Wenn doch, wüsste ich gerne, was es daran auszusetzen gibt.
Christian
Der Computer hilft mir, Probleme zu lösen, die ich ohne Computer nicht hätte.
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#28

Re: Klasse mit Konstanten ?

  Alt 8. Sep 2005, 18:26
Zitat von BlackJack:
nein, wenn dann so:
Delphi-Quellcode:
type TRune = class
function GetRarity : Integer; virtual; abstract;
end;

type TRune1 = class(TRune)
function GetRarity : Integer; override;
end;
type TRune2 = class(TRune)
function GetRarity : Integer; override;
end;


function TRune1.GetRarity : Integer;
begin
  Result := 300;
end;
function TRune2.GetRarity : Integer;
begin
  Result := 400;
end;
musst du halt nur für jede klasse machen, ich weiss ja nicht ob es das so bringt.

p.s.: warum gibt es nicht sowas wie property Value: Integer read 1234; , das wäre doch mal praktisch
wenn dann eher so

Delphi-Quellcode:
type
TRune = class
public
function GetRarity : Integer;
end;

TRune1 = class(TRune)
end;
TRune2 = class(TRune)
end;


function TRune.GetRarity : Integer;
begin
  Result := -1;
  if Classname = 'TRune1then Result := 300;
  if Classname = 'TRune2then Result := 400;
end;
so find ich praktischer...

@ Tigerman33 : ja stimmt schon... ich glaube ich mache es so wie da oben...
Michael
  Mit Zitat antworten Zitat
tigerman33

Registriert seit: 30. Jul 2005
Ort: München
423 Beiträge
 
Delphi 2005 Professional
 
#29

Re: Klasse mit Konstanten ?

  Alt 8. Sep 2005, 18:35
Dann würd ich aber nicht auf Classname zugreifen, sondern eher mit dem is Operator prüfen.

Delphi-Quellcode:
function TRune.GetRarity : Integer;
begin
  Result := -1;
  if self is TRune1 then begin
    Result := 300;
    exit;
  end;
  if self is TRune2 then begin
    Result := 400;
    exit;
  end;
end;
PS: Was ich gepostet hab ist trotzdem schneller
Christian
Der Computer hilft mir, Probleme zu lösen, die ich ohne Computer nicht hätte.
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#30

Re: Klasse mit Konstanten ?

  Alt 8. Sep 2005, 18:37
Stringvergleiche bei Klassennamen? Seid ihr von allen guten Geistern verlassen? Das macht man mit einen is-Verglich auf Self und dem Typ, von dem man wissen will, ob die Klasse von dem Typ ist..
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 5     123 45      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz