Я новичок в C#. Приходите из среды C/C++. Мое приложение имеет List<Model>
, который требуется повсеместно, разными классами. Проблема заключается в том, что копия не будет делать, потому что это заявление:Что такое эквивалент глобальной переменной C/C++?
dataGrid.ItemsSource = myModelList;
требует оригинала по адресу. Я попытался изменить некоторые аргументы и передать эту переменную как ref
, но как только ей присваивается знак равенства, я получаю копию. Верный?
XY проблема. 1 - В C# нет «глобальных переменных» (в строгом смысле слова). 2 - Вы не должны возиться с 'ref' и тому подобное. 3 - 'var a = someotherlist;' делает 'a' равным' someotherlist' BY Reference по умолчанию. В чем проблема, с которой вы столкнулись? –
Нет, у вас нет копии. Знак равенства копирует ссылку для ссылочных типов, включая «Список». –
McGarnagle
Я должен спешить добавить, что есть резьба посередине !! –