Zeigeralternative in C#?



  • Hallo,

    ich habe eine Klasse, deren wichtigste Eigentschaft aus einer Liste einer anderen Klasse besteht. Zusätzlich möchte ich gerne eine Referenz auf eines der Listenobjekte speichern. In C++ hätte ich das mit einem Zeiger gemacht. In C# soll man ja nach Möglichkeit darauf verzichten, hab ich gelernt. Gibt es da eine Alternative?

    Bsp:Code:

    Class Class1 {
    
    List<Class2> _list;
    ?? _selectedClass1;    //<--Zeiger?
    
    public Class1()
    {
    //Fülle die Liste mit Class2 Objekten
    }
    
    public ?? GetActualObject
    {
    get { return _selectedClass1; }
    }
    }
    

    Beste Grüße

    Solick



  • Hää?Was meinst du?
    Setz doch einfach ne Referenz auf das.
    In C# wird das alles mit Referenzen gemacht.



  • du meinst so in der Art?

    Class Class1 {
    
    List<Class2> _list;
    re Class2 _selectedClass1;    
    
    public Class1()
    {
    //Fülle die Liste mit Class2 Objekten
    _selectedClass1 = _list[5];
    }
    
    public ref Claas2 GetActualObject
    {
    get { return _selectedClass1; }
    }
    }
    


  • Nicht ganz.
    Das ref schlüsselwort muss nur verwendet werden wenn man mit nativen datentypen arbeitet. Bei klassen ist das nicht nötig da sie von "natur aus" Referenztypen sind.
    Lies dir nochmal ein gutes Tutorial durch.Das sind Grundlagen



  • grml. Stimmt ja. Manchmal sieht man de Wald vor lauter Bäumen nicht mehr. Danke Dir!


Anmelden zum Antworten