Esempio n. 1
0
        static void Main(string[] args)
        {
            //Erstellung von Objekten
            StructPerson person1 = new StructPerson("Hugo", 45);
            ClassPerson  person2 = new ClassPerson("Anna", 45);

            //Ausgabe
            Console.WriteLine(person1.Alter);
            Console.WriteLine(person2.Alter);

            //Funktionsaufruf
            Altern(person1);
            Altern(person2);

            //Erneute Ausgabe: Nur das Klassenobjekt (Referenztyp) hat sich verändert. Das Structobjekt (Wertetyp) hat sich nicht verändert,
            //da bei der Übergabe an die Funktion nur eine Kopie des Objekts übergeben wurde.
            Console.WriteLine(person1.Alter);
            Console.WriteLine(person2.Alter);

            //Übergabe des Wertetyps als Refernz mittels Ref-Stichwort
            Altern2(ref person1);
            Console.WriteLine(person1.Alter);

            Console.ReadKey();
        }
Esempio n. 2
0
 static void Altern(ClassPerson person)
 {
     person.Alter++;
 }