Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno C# - Jak číst ze struktury?

Mam vytvorenou strukturu s ruznymi daty. Tuto strukturu predavam "pouze kopiruji" do parametru ruznych metod, ktere volam... Nedavam tam zadne out ani ref, tak jak je mozne ze ty data se me stale meni? Jak tomu zabranit? Specha diky moc...

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Štruktúra sa síce posúva hodnotou (by value), ale keď obsahuje nejaký objekt, tak ten sa už nekopíru… poslední
los 21.03.2007 19:54
los

Štruktúra sa síce posúva hodnotou (by value), ale keď obsahuje nejaký objekt, tak ten sa už nekopíruje - kopíruje sa len referencia na ten objekt. V tomto prípade je tým objektom pole - štruktúra obsahuje referenciu na pole, ktorá sa síce skopíruje, ale stále odkazuje na to isté pole.

Ako tomu zabrániť? Najjednoduchšie bude to pole v tých metódach nemeniť, keď ho ani meniť nechceš alebo pracovať nad kópiou toho poľa, ktorú si vytvoríš sám.

Nechápem, čo tie štruktúry reprezentujú a nepáčia sa mi. Štruktúra Stanice obsahuje pole staníc, počet staníc a maximálny počet staníc - pole má vlastnosť Length, takže na počet nepotrebuješ ďalšiu premennú. Namiesto celej tej štruktúry by som použil pole reťazcov, ale možno máš nejaký dôvod, prečo to máš takto. Celkovo by som uprednostnil triedy pred štruktúrami.

Zpět do poradny Odpovědět na původní otázku Nahoru