[Delphi] Frage zu Proceduren und Functions

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von -idur-, 9. April 2007 .

Schlagworte:
  1. 9. April 2007
    Frage zu Proceduren und Functions

    Tach bzw. um die Zeit eher Nacht!

    Hab da mal ne Frage bezüglich den Procedures und Functions. Wozu gibts beides?^^

    Ich kann doch mit Proceduren genau das gleiche machen wie mit Functions oder? Der einzige Unterschied besteht doch darin, dass eine Function nur einen Rückgabewert hat und bei Proceduren kann ich doch so viele Rückgabewerte einstellen wie ich lustig bin, oder?

    Wozu gibts die Functions dann? Haben die irgendeinen Vorteil gegenüber den Proceduren?
    Eigentlich reicht es doch, wenn man nur Proceduren hat.

    Sehr komische Sache... bitte klärt mich auf^^

    Greetz
     
  2. 9. April 2007
    AW: Frage zu Proceduren und Functions

    Hab zwar selber keine Ahnung von Delphi, aber Google xD
    Und da stand, dass der Unterschied zwischen denen ist, dass wenn man Funktionen aufruft, dass man dann einen Rückgabewert erhält, bei Prozeduren aber nicht...
    Is bei VB und ich denk bei ziemlich allen Sprachen, genau so^^
     
  3. 9. April 2007
    AW: Frage zu Proceduren und Functions

    Hi,

    ein kleiner Vorteil liegt darin, dass du mehrere Aufrufe ineinander verschachteln kannst.
    Z.B.
    Code:
    MyB := GibAvonX(GibXvonH(MyH))
    Verstehst?

    Gruss,
    MArc
     
  4. 9. April 2007
    AW: Frage zu Proceduren und Functions

    au stimmt, das is natürlich gut^^
    daran hab ich noch gar nich gedacht!

    danke jungs!

    bewertungen sind gleich ma raus :]
     
  5. 9. April 2007
    AW: Frage zu Proceduren und Functions

    Eine function hat einen Rückgabewert eine Procedure nicht. Das ist aber eher ein Delphi-Ding. In c++ z.B gibt es nur functionen.
     
  6. 9. April 2007
    AW: Frage zu Proceduren und Functions

    hmm ich dachte eigentlich, dass proceduren auch rückgabewerte (auch mehrere) haben, wenn mans entsprechend codet :/

    das wird hier immer seltsamer^^

    naja, jetzt gehts erstma ins bett

    greetz

    ps: bewertung is auch an dich raus, asdrexit!
     
  7. 9. April 2007
    AW: Frage zu Proceduren und Functions

    Stimmt :]

    Siehe: Prozeduren und Funktionen - Delphi-Treff

    So seltsam ist das gar nicht, höchstens unötig
     
  8. 9. April 2007
    AW: Frage zu Proceduren und Functions

    Prozeduren können mit eigene/komplexen Klassen umgehen, funktionen nicht!

    In Proceduren kann man Variablen speichern und diese dann aufrufen, allerdings erstellt eine Prozedur eigene Variablen, selbst wenn sie vorher definiert wurden und vergisst die wenn die Prozedur zuende ist.
    Man muss deshalb var vor die Variable schreiben, Beispiel:
    Code:
    procedure abc(a : String; var b : string);
    Für b benutzt er keine neue Variable und b kann nachdem die Procedure fertig ist auch verwenden, a nicht.
     
  9. 10. April 2007
    AW: Frage zu Proceduren und Functions

    Warum sollte es mit functionen nicht gehen ?

    Das ist nicht ganz richtig. Nach dem austritt aus einer Procedure/Function werden nur die Pointer der variablen gelöscht und der Speicher freigegeben. Ruft man eine Procedure/Function mehrmals hintereinander auf, zeigen die Pointer der Variablen meistens wieder auf dem selben Speicherbereich, womit die Variablen den selben wert hätten wie beim letzten aufruf. Schreibt man das Schlüsselwort "Var" vor eine Parameter-Variable, wird kein neuer Speicher angefordert, sondern nur ein Pointer erstellt, den man beim Aufruf der Procedure/Function angegeb muss.
     
  10. 10. April 2007
    AW: Frage zu Proceduren und Functions

    Das meiste wurde eigentlich gesagt, aber was noch wichtig ist:
    Funktionen können sich beliebig oft selbst aufrufen und damit lassen sich dann "Probleme" rekursiv lösen.

    Siehe:
    • Newtonverfahren > ein Annäherungsverfahren, dass sich so oft mit einem neu ermittelten Wert aufruft, bis dieser sich nur noch so geringfügig verändert, dass das Ergebnis als genau angesehen werden kann
    • Koch'sche Schneeflocke > Koch-Kurve – Wikipedia

    mfg,
    m00pd00p
     
  11. 10. April 2007
    AW: Frage zu Proceduren und Functions

    In C++ gibt es eigentlich auch Prozeduren... aber eher als void-Metoden bezeichnet!
     
  12. 10. April 2007
    AW: Frage zu Proceduren und Functions

    das, was du meinst sind funktionen :angry:
     
  13. 11. April 2007
    AW: Frage zu Proceduren und Functions

    Die Functionen haben dann halt als Rückgabewert "Void". In Delphi als Proceduren deklarierte Methoden haben aber garkeinen Rückgabe wert.
    Dadurch spart man bestimmt 1-2 Bytes ^^
     
  14. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.