-
Also, wenn ich euch beide richtig verstehe, werden laut Fuerchau I/O-Parameter generell per Referenz uebergeben? Dann würde ich also eine Adresse übergeben, mir daher den Wert besorgen, eine Verarbeitung vornehmen und dann das Ergebnis (direkt) auf die Speicheradresse schreiben, so gesehen also keinen Rückgabewert im eigentlichen Sinne (Return) haben?
Und nach Dieter geht beides, sowohl per Adresse als auch per Wert, mit Tendenz zu call by value?
Außerdem gehst du bem Thema Sichtbarkeit auch wirklich von externen Programmen aus, oder?
@Fuerchau, wie ist das gemeint mit der Eindeutigkeit? Wenn ich einen numerischen Wert als teil der DS hätte, würde ich trotzdem einen String zurückbekommen -> weitere Verarbeitung erst nach erneuter Umwandlung in ursprünglichen Datentyp? Ich bin da vielleicht etwas nachlässig, aber ich finde die Vorstellung nicht so schlimm! Ich mein, so BI-Functions wie %Char gibt's ja auch nicht ohne Grund, oder?
-
Hallo,
irgendeine Auswahl hast du nur im ILE bei der verwendung von Prototypen, sagst du da beim Parameter VALUE, dann geht er nur hin und es wird ein call by value generiert. In allen anderen Fällen hast du immer einen call by reference vor dirmit allen bereits diskutierten Konsequenzen.
Rückgabe von Parametern kann beim return erfolgen und dann kommt man in einer Zuweisung an das Ergebnis; im (free) RPG:
ergebnis = machwas(....);
wenn du da mehr als einen Wert zurück haben willst, muss dann halt eine Datenstruktur verwendet werden. An die Einzelwerte kommt man dann per Unterfeld wieder dran (da braucht man keinen %irgendwas. Unschön ist hierbei, dass eine DS für RPG letztlich ein Alfastring ist, aber rpg ist halt eine Schmuddel Programmiersprache und ich finde das noch eine der kleineren Übel.
Sichtbar sind die einzelnen Parameter und Variablen in Abhängigkeit ihrer Definition, wobei bei der Übergabe von Referenzen Seiteneffekte entstehen (die man ja gerade für Parameter Rückgabe nutzt).
mfg
Dieter Bender
 Zitat von BUG
Also, wenn ich euch beide richtig verstehe, werden laut Fuerchau I/O-Parameter generell per Referenz uebergeben? Dann würde ich also eine Adresse übergeben, mir daher den Wert besorgen, eine Verarbeitung vornehmen und dann das Ergebnis (direkt) auf die Speicheradresse schreiben, so gesehen also keinen Rückgabewert im eigentlichen Sinne (Return) haben?
Und nach Dieter geht beides, sowohl per Adresse als auch per Wert, mit Tendenz zu call by value?
Außerdem gehst du bem Thema Sichtbarkeit auch wirklich von externen Programmen aus, oder?
@Fuerchau, wie ist das gemeint mit der Eindeutigkeit? Wenn ich einen numerischen Wert als teil der DS hätte, würde ich trotzdem einen String zurückbekommen -> weitere Verarbeitung erst nach erneuter Umwandlung in ursprünglichen Datentyp? Ich bin da vielleicht etwas nachlässig, aber ich finde die Vorstellung nicht so schlimm! Ich mein, so BI-Functions wie %Char gibt's ja auch nicht ohne Grund, oder?
-
Klasse, alle Klarheiten beseitigt Herzlichen Dank für diese Fülle an Info!
Ihr seid ne super Truppe hier,
Gruß Björn
Similar Threads
-
By loeweadolf in forum IBM i Hauptforum
Antworten: 11
Letzter Beitrag: 06-11-06, 16:05
-
By Ewald in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 14-02-06, 15:51
-
By rolf in forum NEWSboard Programmierung
Antworten: 4
Letzter Beitrag: 14-10-05, 18:06
-
By Muchi in forum NEWSboard Programmierung
Antworten: 6
Letzter Beitrag: 23-03-05, 09:04
-
By JonnyRico in forum NEWSboard Programmierung
Antworten: 5
Letzter Beitrag: 23-11-04, 17:46
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks