Hoe kunnen we helpen?
Subroutines In/Uit. Doorgeven met waarde of referentie
Er zijn twee opties om een object door te geven aan een subroutine:
Doorgeven door waarde, aangegeven door een enkele pijl naar rechts of in, geeft een numerieke waarde door aan de subroutinevariabele die je definieert.
- Doorgeven door waarde betekent dat een numerieke waarde wordt doorgegeven van de aanroepende routine naar deze routine.
- Als de numerieke waarde afkomstig is van een getagde variabele in de aanroepende routine, kan de subroutine de waarde in de variabele in het aanroepende programma niet beïnvloeden. Het gebruikt gewoon de waarde die wordt doorgegeven.
Doorgeven door verwijzing, geïllustreerd door de tegenovergestelde pijlen die in en uit aangeven, geeft een verwijzing of handvat door naar een variabele in de aanroepende routine.
- Pass by reference betekent dat een “verwijzing” naar een gegevensitem wordt doorgegeven.
- Door een doorgegeven referentie te gebruiken, zijn gegevens in de aanroepende routine toegankelijk en veranderbaar.
- Het wijzigen van gegevens die door een referentie zijn doorgegeven, is hetzelfde als het doorgeven van gegevens naar buiten.
Volledige arrays kunnen alleen worden doorgegeven met een verwijzing. Individuele array-elementen kunnen alleen worden doorgegeven met waarde. Als je een array-element wilt doorgeven, moet je de array-index tussen vierkante haakjes [] plaatsen
In 2 woorden
| Doorgeven per waarde. De waarde wordt niet gewijzigd. Het is niet dezelfde waarde in subroutine en hoofdprogramma. |
Doorgeven door verwijzing. Waarde is gewijzigd. Het is dezelfde waarde in subroutine en hoofdprogramma. |