- Регистрация
- 08.11.2015
- Сообщения
- 1 787
- Благодарностей
- 2 453
- Баллы
- 113
Сегодня углубился чуток в С#.
И знаете что узнал?
Кто знает в чём разница?
Может кто-то объяснить подробнее?
И знаете что узнал?
C#:
string line_1 = ""; // так не правильно
string line_2 = string.Empty; // так в самый раз
List<string> list_1 = new List<string>(); // так не нужно делать
List<string> list_2 = Enumerable.Empty<string>().ToList(); // а вот так что доктор прописал
string[] arr_1 = new string[0]; // так не нужно делать
string[] arr_2 = Enumerable.Empty<string>().ToArray(); // а вот так что доктор прописал
Может кто-то объяснить подробнее?
В первом случае всегда создается объект, на который выделяется новая область памяти.
Во втором случае - все переменные изначально ссылаются на одну и ту же область памяти.
Во втором случае - все переменные изначально ссылаются на одну и ту же область памяти.