[C#] Property übergeben

  • Allgemein

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von Artentus.

    [C#] Property übergeben

    Guten Tag erst einmal,

    ich war gerade etwas genervt und verzweifelt und plötzlich komplett verwirrt. 8|
    Scheinbar kann man in C# (in vb wahrscheinlich auch) Propertys nicht also Referenz übergeben, jedenfalls nicht mit "ref" oder "byref".
    Also habe ich letztendlich die Referenz rausgenommen und es so getestet.
    Komischerweise funktionierts trotzdem. Ist das normal? Im Internet habe ich auch nicht dazu gefunden.
    Bsp:

    C-Quellcode

    1. public class KlasseX
    2. Klasse objekt;
    3. Klasse2 objekt2;
    4. //...
    5. objekt.Methode(objekt2.Property); // sie besteht aus einer Liste von Objekten der Klasse3


    Quellcode

    1. public class Klasse
    2. //...
    3. Methode(List<Klasse3> liste)
    4. {
    5. if (true)
    6. {
    7. liste[2].derenProperty = "asd";
    8. }
    9. }


    Letztendlich wurde dann von dem Objekt "objekt2" die Property geändert, obwohl ja in der Methode kein "ref" angegeben war. Ich hoffe das ist verständlich.


    *Topic verschoben*

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „ovexator“ ()

    [VB.NET] ByVal und ByRef - was macht jetzt genau was

    Du kannst nur ne Variable mit Ref übergeben, weil eine Property ist im Prinzip ne Methode, und es sollte klar sein, warum bei ner Methode Ref nicht funktioniert.

    Der C-Tag funktioniert wie der VB-Tag, nur mit nem c statt nem vb zwischen den eckigen Klammern. Du musst ihn manuell schreiben, es gibt dafür keinen Button.