AGB  ·  Datenschutz  ·  Impressum  







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

TTree = object Was ist das?

Ein Thema von Alexander Roth · begonnen am 21. Feb 2007 · letzter Beitrag vom 21. Feb 2007
Antwort Antwort
Benutzerbild von Alexander Roth
Alexander Roth

Registriert seit: 17. Mai 2004
Ort: Kenn
574 Beiträge
 
Turbo Delphi für Win32
 
#1

TTree = object Was ist das?

  Alt 21. Feb 2007, 18:13
Hi,

also ich hatte ja gedacht ich kenne mich a bissel in OOP aus, doch nun sehe ich solch eine Deklaration, und sie lässt sich problemlos kompilieren.
Delphi-Quellcode:
  TTree = object
    Position : TVector;
    Rotation : TGLFloat;
    Size : TGLFloat;
    procedure Draw;
  end;
In der OH ist nix und in meinem Delphi Buch steht nur:
"object | ...Einheit aus Daten und Methoden (durch class abgelöst!)"

Doch in dem Totuial alphamask (aus delphigl.de) muss das "Objekt" (Tree[0]) vom Typ TTree nicht creieren.

Also: Was ist das genau?

Gruß Alexander
Alexander Roth
Ich bin umgestiegen auf: Lazarus und Ubuntu! Alles OpenSource!

Besuch doch mal: www.roth.us.ms
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#2

Re: TTree = object Was ist das?

  Alt 21. Feb 2007, 18:14
Das ist iirc sowas wie ne Klasse, die es nur einmal gibt, und die schon created ist. Bzw. sowas wie ein record, der Methoden enthalten kann.

So ne Mischung halt
  Mit Zitat antworten Zitat
Benutzerbild von Alexander Roth
Alexander Roth

Registriert seit: 17. Mai 2004
Ort: Kenn
574 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: TTree = object Was ist das?

  Alt 21. Feb 2007, 18:18
Und was meint das Buch damit:
Zitat von Alexander Roth:
"object | ...Einheit aus Daten und Methoden (durch class abgelöst!)"
Ist das irgendwie schlechter Programmierstil, oder so?

Gruß Alexander
Alexander Roth
Ich bin umgestiegen auf: Lazarus und Ubuntu! Alles OpenSource!

Besuch doch mal: www.roth.us.ms
  Mit Zitat antworten Zitat
IngoD7

Registriert seit: 17. Feb 2004
464 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: TTree = object Was ist das?

  Alt 21. Feb 2007, 18:28
D7 zumindest hat es sehr wohl in der Hilfe stehen:

Zitat:
Objekttypen

Als Alternative zu Klassentypen können mit der folgenden Syntax auch Objekttypen deklariert werden:

type Objekttypname = object (VorfahrObjekttyp)
Elementliste
end;

Objekttypname ist ein beliebiger gültiger Bezeichner, (VorfahrObjekttyp) ist optional, und Elementliste definiert die Felder, Methoden und Eigenschaften der Klasse. Wird kein VorfahrObjekttyp angegeben, hat der neue Typ keinen Vorfahren. Bei Objekttypen können Elemente nicht als published deklariert werden.

Da Objekttypen nicht von TObject abgeleitet sind, verfügen sie über keine integrierten Konstruktoren, Destruktoren oder andere Methoden. Instanzen können mit der Prozedur New erstellt und mit Dispose freigegeben werden. Sie können Variablen eines Objekttyps aber auch einfach wie bei einem Record-Typ deklarieren.

Objekttypen werden nur aus Gründen der Abwärtskompatibilität unterstützt. Ihre Verwendung ist in neuen Anwendungen nicht zu empfehlen.
  Mit Zitat antworten Zitat
Benutzerbild von Alexander Roth
Alexander Roth

Registriert seit: 17. Mai 2004
Ort: Kenn
574 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: TTree = object Was ist das?

  Alt 21. Feb 2007, 18:34
Zitat von IngoD7:
Zitat:
Ihre Verwendung ist in neuen Anwendungen nicht zu empfehlen.
Schade. Die sehen so praktisch aus.

Gruß Alexander
Alexander Roth
Ich bin umgestiegen auf: Lazarus und Ubuntu! Alles OpenSource!

Besuch doch mal: www.roth.us.ms
  Mit Zitat antworten Zitat
pitti platsch

Registriert seit: 26. Dez 2006
Ort: Berlin
25 Beiträge
 
Delphi 2005 Professional
 
#6

Re: TTree = object Was ist das?

  Alt 21. Feb 2007, 18:37
bei turbo pascal gabs noch kein "class", da hieß das "object". und gerade am anfang von delphi war abwärtskompatibilität wichtig, denk ich mal.
außerdem kommt "object" in dern formulardateien zur anwendung (einfach mal als text anzeigen lassen).
Sollte geh'n...
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.746 Beiträge
 
Delphi 2007 Professional
 
#7

Re: TTree = object Was ist das?

  Alt 21. Feb 2007, 18:39
Zitat von Alexander Roth:
Schade. Die sehen so praktisch aus.
Für einfache Sachen kann man objects auch verwenden, z.B. eine Klasse, die einen 3D-Punkt kapselt o.ä. Wir verwenden sie auf diese Art seit Langem ohne große Probleme. Wenn du nach "old style object delphi" im Usenet googelst, findest du mehr Lesestoff.

HTH, Uli.
Uli Gerhardt
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.746 Beiträge
 
Delphi 2007 Professional
 
#8

Re: TTree = object Was ist das?

  Alt 21. Feb 2007, 18:41
Zitat von pitti platsch:
außerdem kommt "object" in dern formulardateien zur anwendung (einfach mal als text anzeigen lassen).
Ja, oder bei procedure of object. Das hat aber gar nichts mit dem "object" aus dem Originalposting zu tun.
Uli Gerhardt
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.746 Beiträge
 
Delphi 2007 Professional
 
#9

Re: TTree = object Was ist das?

  Alt 21. Feb 2007, 18:45
BTW: In neueren Delphi-Versionen gibt es auch "Records mit Methoden" aka "advanced records". Die werden aber nach meiner Erfahrung vom Compiler schlechter unterstützt als die pösen, alten objects.
Uli Gerhardt
  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 13:47 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