AGB  ·  Datenschutz  ·  Impressum  







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

Compoübergabe in eigene Klasse

Ein Thema von alienous · begonnen am 22. Aug 2006 · letzter Beitrag vom 22. Aug 2006
Antwort Antwort
alienous

Registriert seit: 27. Jan 2006
94 Beiträge
 
#1

Compoübergabe in eigene Klasse

  Alt 22. Aug 2006, 14:46
hi, ich nochmal

diesmal möchte ich etwas grundsätzliches über pointerübergaben wissen.

auf meiner main-form habe ich eine TIDIRC-Compo (die Compo is hier nich so wichtig)

in dem constructor meiner klasse will ich diese compo übergeben bekommen (eigentlich ja nur die adresse) und sie in dem neu erstellten objekt "merken" lassen, also im private-teil mit "IRCConn : TIDIRC;"

da ich noch nich wirklich was mit pointern gemacht hab, wollte ich mal hier nachfragen, ob ich einfach beim constructor die compo mit compo-namen übergeben soll, und diese im objekt dann so abspeichern soll, wie oben beschrieben?! oder wird dabei die compo im speicher kopiert?

danke
  Mit Zitat antworten Zitat
Benutzerbild von chaosben
chaosben

Registriert seit: 27. Apr 2005
Ort: Görlitz
1.358 Beiträge
 
Delphi XE2 Professional
 
#2

Re: Compoübergabe in eigene Klasse

  Alt 22. Aug 2006, 14:50
Hi!

Imho brauchst du für diese Sache keine Pointer.
Ich würde es so machen:
Delphi-Quellcode:
//...

private
  FIRC : TIDIRC;

//...

constructor TMyCompo.Create(AIRCCompo : TIDIRC);
begin
  FIRC:=AIRCCompo;
end;
Bei diesem Vorgehen wird nur die VCL-interne ID des Objektes übergeben, was eine "Art" Pointer ist.

Natürlich kannst du das auch mit Pointern lösen ... nur warum schwierig wenn es auch einfach geht?
Benjamin Schwarze
If I have seen further it is by standing on the shoulders of Giants. (Isaac Newton)
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#3

Re: Compoübergabe in eigene Klasse

  Alt 22. Aug 2006, 15:18
Zitat von chaosben:
Bei diesem Vorgehen wird nur die VCL-interne ID des Objektes übergeben, [...]
Was soll das denn sein o.O ?
Zitat:
was eine "Art" Pointer ist.
Jede Objekt-Variable _ist_ einfach ein Pointer. Nicht mehr und nicht weniger. Richtig ist dein Code dennoch.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Benutzerbild von chaosben
chaosben

Registriert seit: 27. Apr 2005
Ort: Görlitz
1.358 Beiträge
 
Delphi XE2 Professional
 
#4

Re: Compoübergabe in eigene Klasse

  Alt 22. Aug 2006, 15:22
Zitat von Khabarakh:
Jede Objekt-Variable _ist_ einfach ein Pointer.
Ja, das ist richtig. Aber es ist nicht der Pointer auf das Objekt.

Probier einfach mal folgendes aus:
Vergleiche @Objekt(bzw. AdressOf) mit Integer(Objekt) und du wirst staunen.
Benjamin Schwarze
If I have seen further it is by standing on the shoulders of Giants. (Isaac Newton)
  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 20:17 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