|
> What I am working on understanding now is the merits between passing the > pointer to the subprocedure versus returning the pointer to the calling > subprocedure. For that matter, what are the merits of using a return > argument at all? The merits of using a return argument are in the fact that you can use the result in an expression. Something like EVAL a = your_function(b) or IF your_function(a) > 3. Moreover, you can pass the return argument to another function, like EVAL a = function_1(function_2(b)). As for the pointer issue: when you pass a pointer to a procedure, the caller controls the storage. When a procedure returns a pointer, the procedure is responsible for the storage, but the caller has no control over this storage. The procedure might be in a different activation group; when it is reclaimed, the pointer becomes invalid. So, passing the pointer to the procedure is safer. Joep Beckeringh +--- | This is the RPG/400 Mailing List! | To submit a new message, send your mail to RPG400-L@midrange.com. | To subscribe to this list send email to RPG400-L-SUB@midrange.com. | To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.