בואו נעשה קצת סדר..
---
reference(רפרנס או בעברית מצביע או בקיצור לפעמים ref) - הוא למעשה המצביע(מעיין כתובת) של המשתנה.
למעשה כשאני שולח פרמטר כלשהוא בתצורת רפרנס אני מאפשר גישה מלאה אל המשתנה.
כלומר- בשליחת משתנה רגילה אני רק מקבל את ערך המשתנה. בשליחת משתנה בתצורת רפרנס כל פעולה שאבצע על הרפרנס תושפע.
דוגמאות:
בדוגמה זו- הצבתי את a כ
ערך של b
בדוגמה זו- הצבתי את a כ
מצביע של b. וכעת a היא כמו "שם נרדף" ל b
למעשה כאשר אני שולח למתודה/פונקציה ארגומנט עם מצביע(רפרנס), כלומר הפעולות שאבצע עליו ישפיעו על תכולת המשתנה, ולא רק הערך.