Klasse an Klasse Übergeben



  • Angenommen ich habe 3 Klassen A, B und C.

    Pseudocode:

    class A {
    
    };
    
    class B {
       public A* a;
       public B(A* a) {
           this.a = a;
       }
    };
    
    class C {
       private A a = new A();
       private B b = new B(&a);
    };
    

    Wie wöde sowas konkret in C# aussehen? Muss ich da Handels übergeben? Also ich will auf jedenfall die Referenz und keine Kopie..

    Grüße



  • Klassen werden in C# als Referenz über geben

    public class A {
    
    };
    
    class B {
       public A a;
       public B(A a) {
           this.a = a;
       }
    };
    
    class C {
       private A a = new A();
       private B b = new B(a);
    };
    


  • Also muss ich garnichts weiter beachten weil das sowieso gemacht wird?

    Danke..



  • c# Übergabe schrieb:

    Also muss ich garnichts weiter beachten weil das sowieso gemacht wird?

    Danke..

    Für Klassen: Ja.

    In C# gibt es Referenz Typen (Klassen, Interfaces) und Werte Typen (enums, structs, ..).

    Lies mal darüber...

    Simon



  • c# Übergabe schrieb:

    Also ich will auf jedenfall die Referenz und keine Kopie..

    Wie schon gesagt wurde, werden Objekte von Klassen von sich aus immer als Referenz übergeben. In der Tat hast du in .Net eher nen Problem beliebige Objekte zu kopieren, das geht nämlich nicht trivial.


Anmelden zum Antworten