AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign Zugriff auf Klasseneigenschaften -- Verstehe die Fehlermledung nicht
Thema durchsuchen
Ansicht
Themen-Optionen

Zugriff auf Klasseneigenschaften -- Verstehe die Fehlermledung nicht

Ein Thema von Jazzman_Marburg · begonnen am 7. Aug 2011 · letzter Beitrag vom 10. Aug 2011
Antwort Antwort
Benutzerbild von Jazzman_Marburg
Jazzman_Marburg

Registriert seit: 2. Aug 2004
359 Beiträge
 
#1

AW: Zugriff auf Klasseneigenschaften -- Verstehe die Fehlermledung nicht

  Alt 7. Aug 2011, 18:52
Hinter deinen Klassenmethoden fehlt das Schlüsselwort static.
Vielen Dank!

Die Ursache ist wohl einfach nur, daß solche Klasseneigenschaften, aus irgendwelchen unerfindlichen Gründen, keine "Vererbung" unterstützen.
Darum auch nur direkte Klassenvariablen oder statische Klassenmethoden.
Juup, das hilft!

Nebenbei würde ich mir mal einen Styleguide anschauen, der Quelltext sieht ja aus...
Ooch, soo übel sieht das garnicht aus -- habe mir halt die Großschreibung angewöhnt und werd sie nicht mehr los.

Aber Danke auch für diesen Hinweis.

Schönen Abend an alle!

Gruß
Jazzman
--- Delphi XE Starter, Windows 8 ---
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.848 Beiträge
 
Delphi 12 Athens
 
#2

AW: Zugriff auf Klasseneigenschaften -- Verstehe die Fehlermledung nicht

  Alt 7. Aug 2011, 20:30
Ich meinte nicht nur die Groß- und Kleinschreibung.

Unterstriche in Bezeichnern (_instance) sind nicht üblich und Getter und Setter sollten auch so heißen, nämlich mit Get und Set anfangen.

Besonders letzteres ist wichtig, da du sonst die Klassenvervollständigung von Delphi durcheinanderbringst. (Und man den Code nebenbei auch kaum versteht.)
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von Jazzman_Marburg
Jazzman_Marburg

Registriert seit: 2. Aug 2004
359 Beiträge
 
#3

AW: Zugriff auf Klasseneigenschaften -- Verstehe die Fehlermledung nicht

  Alt 7. Aug 2011, 21:49
Ich meinte nicht nur die Groß- und Kleinschreibung.
Puuh.

Unterstriche in Bezeichnern (_instance) sind nicht üblich
100% korrekt - ist Mist.

...und Getter und Setter sollten auch so heißen, nämlich mit Get und Set anfangen.
Ebenso.

...die Klassenvervollständigung von Delphi durcheinanderbringst...
Delphi XE Starter -- da gibt es so einen Luxus nicht. Man war hier der Meinung, Hobby-Programmierer benötigten sowas nicht (in etwa so, als wenn selten-Autofahrer kein ABS benötigen, das ist nur etwas für Profis ).

Lieben Dank für die Kommentare!

Gruß
Jazzman
--- Delphi XE Starter, Windows 8 ---
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.313 Beiträge
 
Delphi 12 Athens
 
#4

AW: Zugriff auf Klasseneigenschaften -- Verstehe die Fehlermledung nicht

  Alt 7. Aug 2011, 23:35
Sagen wir es mal so: Hauptsache es ist überhaupt ein einheitlicher Style vorhanden ... also dem her wäre es eigentlich noch vollkommen OK.

STRING oder String?
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von Jazzman_Marburg
Jazzman_Marburg

Registriert seit: 2. Aug 2004
359 Beiträge
 
#5

AW: Zugriff auf Klasseneigenschaften -- Verstehe die Fehlermledung nicht

  Alt 8. Aug 2011, 10:08
... also dem her wäre es eigentlich noch vollkommen OK.
Ich finde auch.

Danke & Gruß
Jazzman
--- Delphi XE Starter, Windows 8 ---
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.848 Beiträge
 
Delphi 12 Athens
 
#6

AW: Zugriff auf Klasseneigenschaften -- Verstehe die Fehlermledung nicht

  Alt 8. Aug 2011, 11:15
Ich habe ja auch geschrieben sollte, nicht muss.

Wenn ich solchen Quelltext bekomme, schicke ich den ohnehin erst einmal durch den Formatter. ich finde es nur schöner, wenn das nicht nötig ist, aber leider ist der VCL- und RTL-Quelltext selbst nicht ganz sauber...
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von Jazzman_Marburg
Jazzman_Marburg

Registriert seit: 2. Aug 2004
359 Beiträge
 
#7

AW: Zugriff auf Klasseneigenschaften -- Verstehe die Fehlermledung nicht

  Alt 8. Aug 2011, 16:26
Wenn ich solchen Quelltext bekomme, schicke ich den ohnehin erst einmal durch den Formatter. ich finde es nur schöner, wenn das nicht nötig ist, aber leider ist der VCL- und RTL-Quelltext selbst nicht ganz sauber...
Hmmm... also jetzt bin aber doch mal neugierig: Wir sieht denn mein Coding (s.o.) aus, nach dem der Formatter seine Arbeit erledigt hat aus? (Kenne den "Formatter" nicht).

Bis auf die bereits eingestandene Groß/Kleinschreibung und die Set/Get-Namensgebung sehe ich nicht, was der Formatter denn da großartig korrigieren wird.

Übrigens die _instance Schreibweise (_ Unterstrich) scheint bei Singletons ganz üblich zu sein http://vcldeveloper.com/tips-tricks/...ern-in-delphi/.

Gruß, Jazzman
--- Delphi XE Starter, Windows 8 ---
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.039 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#8

AW: Zugriff auf Klasseneigenschaften -- Verstehe die Fehlermledung nicht

  Alt 8. Aug 2011, 16:30
Ooch, soo übel sieht das garnicht aus -- habe mir halt die Großschreibung angewöhnt und werd sie nicht mehr los.
Dazu fällt mir ein Zitat ein: "I like my source code yelling at me!"
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.313 Beiträge
 
Delphi 12 Athens
 
#9

AW: Zugriff auf Klasseneigenschaften -- Verstehe die Fehlermledung nicht

  Alt 8. Aug 2011, 17:17
Der Codeformatter fehlt wohl im XE Starter? (bin mir grad nicht so sicher)

Strg+D

Standardmäßig dürfte es wohl so aussehn, aber man kann die Formatter meißt noch an seine Wünsche anpassen.
Delphi-Quellcode:
type
  TDP = class
  private
  class var
    _instance: TDP;
    FXMLFileName: string;

  public
    destructor Destroy; override;

    class function Instance: TDP;
    class function NewInstance: TObject; override;

    class procedure NewXMLFileName(aFilename: string);

    class property XMLFileName: string read FXMLFileName write NewXMLFileName; // Fehler!
  end;
Es gibt aber auch externe Bei Google suchenDelphi Code Formatter


[edit]
och menno, das Bild wird hier ja automatisch bis zur Unkenntlichkeit verkleinert



Und ja, ich hab auch meinen ganz privaten "Schreibstil" und leider noch keinen Code Formatter gefunden, welcher diesen so schön hinbekommt

Hier müßte ja eigentlich noch der "class var"-Block eingerückt werden, aber leider hat man sowas vergessen zu implementieren (und sowas auch noch vom Verfasser der Syntax )
Angehängte Grafiken
Dateityp: jpg Unbenannt.jpg (78,7 KB, 24x aufgerufen)
Angehängte Dateien
Dateityp: zip Unbenannt.png.zip (105,6 KB, 1x aufgerufen)
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 8. Aug 2011 um 17:23 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


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 00:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz