AGB  ·  Datenschutz  ·  Impressum  







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

Interface

Ein Thema von BenjaminH · begonnen am 12. Dez 2007 · letzter Beitrag vom 13. Dez 2007
Antwort Antwort
Seite 1 von 2  1 2      
BenjaminH

Registriert seit: 14. Okt 2004
Ort: Freiburg im Breisgau
713 Beiträge
 
Turbo Delphi für Win32
 
#1

Interface

  Alt 12. Dez 2007, 13:23
Hallo,
ich möchte mich mal ein bisschen mit Interfaces beschäftigen. Ich habe aber irgendwie garkeinen Plan davon.
Kennt jemand ein Tutorial dafür? Ich habe keines gefunden.

Das Konzept von Interfaces ist mir auch nicht so ganz klar.
Vielleicht kann mir da ja jemand helfen?

Vielen Dank,
Benjamin
Benjamin
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Interface

  Alt 12. Dez 2007, 13:32
Hallo Benni,

das wäre vielleicht etwas für dich (betrachte auch die folgenden Links): Interfaces und Delegation durch "implements".

Grüße
  Mit Zitat antworten Zitat
Benutzerbild von vlees91
vlees91

Registriert seit: 19. Apr 2004
843 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Interface

  Alt 12. Dez 2007, 13:32
Wenn ich mich nicht irre, hilft das weiter: [google]"Modellierung und Systementwicklung"[/google]

grml, warum werden die "'s aus dem suchquery entfernt
vlees91
  Mit Zitat antworten Zitat
BenjaminH

Registriert seit: 14. Okt 2004
Ort: Freiburg im Breisgau
713 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Interface

  Alt 12. Dez 2007, 13:38
Danke! Das ging ja mal wieder superschnell.
@Matze: Perfekt, jetzt werde ich wissen, wie das funktioniert.
@vlees: Perfekt, jetzt werde ich wissen, wofür ich das brauch.

Warum habe ich das nicht gefunden?

So, jetzt ergibt sich folgende Frage:
Was bringt einem der GUI String, dabei?
In den beiden Links aus dem Thread, den Matze verlinkt hat, wird darauf nicht eingegangen.
Benjamin
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Interface

  Alt 12. Dez 2007, 13:58
Zitat von BenjaminH:
Was bringt einem der GUI String, dabei?
In den beiden Links aus dem Thread, den Matze verlinkt hat, wird darauf nicht eingegangen.
Du meinst GUID
Das bringt dir, dass du eine GUID vorgeben kannst, ansonsten bekommst du IMHO eine vom Compiler verpasst. Damit hat dein Interface eine weltweit einmalige ID und man kann es darüber finden/ansprechen/ignorieren.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#6

Re: Interface

  Alt 12. Dez 2007, 14:01
Hallo,

ich hatte da auch mal was geschrieben.

Gruß
xaromz
I am a leaf on the wind - watch how I soar
  Mit Zitat antworten Zitat
BenjaminH

Registriert seit: 14. Okt 2004
Ort: Freiburg im Breisgau
713 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Interface

  Alt 12. Dez 2007, 14:07
So, nächstes Problem:
Ich habe ein Interface von einem anderen abgeleitet:
Delphi-Quellcode:
IShape=Interface
...
IRect=Interface(IShape)
..
TRect=class(TInterfacedObject, IRect)
Var Shape:IShape;

Shape:=TRect.Create
Ich kann IShape ein Objekt, das von einem Nachfahren von IShape abgeleitet ist, nicht zuweisen?
Warum?

Viele Grüße,
Benjamin
[Edit]@xaromz: Danke, das Thema wird ja immer genialer.
Benjamin
  Mit Zitat antworten Zitat
Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#8

Re: Interface

  Alt 12. Dez 2007, 14:31
Zitat von BenjaminH:
Delphi-Quellcode:
IShape=Interface
...
IRect=Interface(IShape)
..
TRect=class(TInterfacedObject, IRect)
Var Shape:IShape;

Shape:=TRect.Create
Ich kann IShape ein Objekt, das von einem Nachfahren von IShape abgeleitet ist, nicht zuweisen?
Warum?
Die Interfaces müssen GUIDs haben, die GUID wird nicht autom. erzeugt (@Jesus).
Nur über die GUID wird der Typ des Interfaces gehandhabt.
Außerdem musst du beim Implementieren eines Interfaces auch sämtliche Vorfahren dieses Interfaces angeben, die du implementieren willst.
Das nervt wie Hölle, aber ohne gates nicht...
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat
BenjaminH

Registriert seit: 14. Okt 2004
Ort: Freiburg im Breisgau
713 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: Interface

  Alt 12. Dez 2007, 14:37
ok, damit kann ich leben.
Die GUIDs werden dann also zum unterscheiden der Interfaces verwendet. So wie bei xaromz mit Supports.
Haben sie noch eine andere Funktion?
Benjamin
  Mit Zitat antworten Zitat
Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#10

Re: Interface

  Alt 12. Dez 2007, 14:45
Zitat von BenjaminH:
Haben sie noch eine andere Funktion?
Man kann einen Interfacetypen als GUID benutzen.
also so
Delphi-Quellcode:
var
  eineGuid : TGuid;
begin
  eineGuid := IRect;
end;
Damit wiederum kann man ziemlich coole Dinge bauen, wie Dictionaries, die pro GUID eine Factory haben oder was-weiß-ich-noch-alles...
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 19:36 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