Μου δημιουργήθηκε η εξής απορία.
Στις ανέμελες φοιτητικές εποχές γράφαμε στην C:
(Ακολουθεί μάλλον λανθασμένος κώδικας
![Confused [8-)]](/cs/emoticons/emotion-43.gif)
.... αλλά για αυτό υπάρχει και ο compiler
![Stick out tongue [:P]](/cs/emoticons/emotion-4.gif)
)
int var1 = 5;
int *p;
p = &var1;
και μετά αλλάζαμε τα φώτα στην p και οι αλλαγές συνέβαιναν και στην var1.
Αναρωτήθηκα αν μπορούμε να κάνουμε κάτι αντίστοιχο και στην C# με κάποιο αντικείμενο.
πχ
(ακολουθεί Σίγουρα λανθασμένος κώδικας
![Stick out tongue [:P]](/cs/emoticons/emotion-4.gif)
)
System.Windows.Forms.Control ctrl1 = new System.Windows.Forms.Control(...);
object obj1 =
ref ctrl1;
και μετά αλλάζοντας τα φώτα στην obj1 να αλλάζει και η ctrl1.
Δεν θέλω να χρησιμοποιήσω συνάρτηση γιατί θα είναι πολύ "πολύπλοκο" για να αξίζει τον κόπο.
Ξέρω ότι ένα από τα βασικά features της C# είναι ότι είναι pointer free
και ότι ακριβώς μπορεί να θέλει να αποφύγει τέτοια φαινόμενα αλλά....η
περιέργεια βλέπετε