Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Elektronix
Anmeldungsdatum: 29.06.2006 Beiträge: 742
|
Verfasst am: 01.01.2008, 23:20 Titel: Property und Record-Function bei UDTs |
|
|
Was ist da der Unterschied?
Wenn ich die Hilfe-CHMs richtig verstehe, ist eine Porperty eine Function, die immer beim Zugriff auf eine bestimmten Variable aufgerufen wird. Die Variable ist dann der Rückgabewert.
Genau das gleiche erreicht man aber auch, wenn man im UDT einfach eine Function unterbringt, die naturgemäß auch einen Rückgabewert für eine Variable liefert. Wo liegt dann der Vorteil bzw. Unterschied zur Property? _________________ Und die Grundgebihr is aa scho drin- DOS is jo nett. |
|
Nach oben |
|
 |
ThePuppetMaster

Anmeldungsdatum: 18.02.2007 Beiträge: 1839 Wohnort: [JN58JR]
|
Verfasst am: 01.01.2008, 23:29 Titel: |
|
|
eigentlich keiner .. nur, das du 2 getrente Funktionen hast, die einmal bei der übergabe eines wertes
(vergleichsbeispiele)
Code: | Sub prop (Var)
End Sub |
und einmal beim lesen des variablenwertes
Code: | function prop () as blub
End function |
aufgerufen werden.
Die haben jedoch beide den selben namen, was du in dem UDT nicht machen kannst. höchstens mit overlay, aber das glaub ich irgend wie nicht.
MfG
TPM _________________ [ WebFBC ][ OPS ][ ToOFlo ][ Wiemann.TV ] |
|
Nach oben |
|
 |
Elektronix
Anmeldungsdatum: 29.06.2006 Beiträge: 742
|
Verfasst am: 02.01.2008, 18:16 Titel: |
|
|
Hmmm, so ganz habe ich Deinen Pseudocode nicht kapiert - weil Du ein Beispiel für Subs gibst, nicht für Properties. _________________ Und die Grundgebihr is aa scho drin- DOS is jo nett. |
|
Nach oben |
|
 |
Wolfi30
Anmeldungsdatum: 17.08.2007 Beiträge: 38
|
Verfasst am: 04.01.2008, 15:11 Titel: |
|
|
Hi!
propertys functionieren ähnlich wie Functionen, man kann einen Wert übergeben und zurückerhalten! Der Unterschied besteht aber darin, dass man den Parameter wie bei einer normalen Variable übergeben kann.
Beispiel :
Gibt es z.B eine Klasse Kreis und eine property Farbe mit einem Set-Wert, kann man einfach schreiben -> Kreis.Farbe=Rot anstatt Kreis.SetColor(Rot)
Ähnlich bei einem Get-Wert : anstatt zu schreiben Farbe=Kreis.GetColor() kann man schreiben Farbe=Kreis.Farbe
Gruß Wolfi |
|
Nach oben |
|
 |
Elektronix
Anmeldungsdatum: 29.06.2006 Beiträge: 742
|
Verfasst am: 04.01.2008, 18:58 Titel: |
|
|
@Wolfi30
Ok, das ist schon mal ein Hinweis. Dann liegt der Vorteil von UDTs am ehesten im geringeren Schreibaufwand, weniger in der Verwendbarkeit- richtig?
Wenn nun eine Property mehrere Parameter übernehmen soll, wie schreibt man das? _________________ Und die Grundgebihr is aa scho drin- DOS is jo nett. |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 04.01.2008, 21:12 Titel: |
|
|
Geht AFAIK nicht.
Denn eine Property soweit ich das sehe mehr wie eine Variable, weniger als Function/Sub betrachtet werden. Du müsstest/solltest daher für jeden "Parameter" bzw. Wert eine extra Property anlegen. _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
Wolfi30
Anmeldungsdatum: 17.08.2007 Beiträge: 38
|
Verfasst am: 05.01.2008, 16:21 Titel: |
|
|
Hi!
Wie Mao schon geschrieben hat, sollte man für jede Eigenschaft eine eigene property-Anweisung erstellen! Wäre auch unsinnig bei z.B Farbe noch ein Zusatzparameter zu integrieren.
Gruß Wolfi |
|
Nach oben |
|
 |
|