Prozedur-Konzept < Softwaretechnik+Pro < Praktische Inform. < Hochschule < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 20:51 Sa 30.10.2004 | Autor: | Fergie |
hallo!!!
Welche Rolle spielen eigentlich Parameter in dem Prozedur-konzept. Ich weiß das sie Daten transportieren aber das kann doch nicht alles sein.
Helft mir!!!
|
|
|
|
Hallo Fergie,
> Welche Rolle spielen eigentlich Parameter in dem Prozedur-konzept. Ich weiß das sie Daten transportieren aber das kann doch nicht alles sein.
Im Grunde genommen ist der "Datentransport" (eher Datenvermittlung) eine sehr allgemeine Bezeichnung für den Sinn von Parametern bei Prozeduren. So gesehen ist das dann tatsächlich schon alles.
Doch wie bei jeder allgemeinen Sache, werden die übergebenen Daten auf verschiedene Art und Weise interpretiert. So unterscheidet man z.B. zwischen den call-by-value und call-by-reference - Konventionen. Bei call-by-value werden die übergebenen Daten direkt als die benötigten Informationen interpretiert. Wenn ich z.B. eine Prozedur mit folgendem Prozedurkopf habe:
procedure setsystemtime(new_time : integer);
nimmt diese Prozedur genau einen call-by-value-Parameter entgegen und verwertet den Informationsgehalt dieses Parameters direkt.
Ich denke das Ganze wird ein Bißchen verständlicher, wenn ich jetzt den Unterschied zu call-by-reference erkläre. Hier werden die Daten, die man durch die Parameter bekommt anders gedeutet. Die Parameter enthalten bei dieser Konvention die Adresse der eigentlichen Daten auf denen operiert werden soll; Genauso als wenn dir jemand einen Link zu einer Internet-Seite mitteilt, auf die du gehst, um dich über den Seiten-Inhalt zu informieren. In Turbo Pascal erkennt man einen solchen Referenz-Parameter an dem Schlüsselwort var:
procedure control_robot(var Nr_5 : TRoboter);
Referenzen sind übrigens eine in ihrer Mächtigkeit eingeschränkte Version von Zeigern! Aber ich denke, daß reicht jetzt erstmal für den Anfang.
Viele Grüße
Karl
|
|
|
|