Skip to content

String.Empty чи “” для ініціалізації рядка? [C#]

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Завантаження...

[ Полезный рекламный блок ]

Попробуйте свои силы в игре, где ваши навыки программирования на C# станут решающим фактором. Переходите по ссылке 🔰.


Використовуйте те, що ви і ваша команда вважаєте найбільш зручним для читання. Комусь подобається коротший варіант, комусь з використання класу.

З точки зору продуктивності та коду, що генерується, різниці справді немає. При тестуванні продуктивності, вони ходили туди-сюди між тим, хто з них швидший за інший, і лише на мілісекунди.

Якщо подивитися на код за сценою, то теж не видно жодної різниці. Єдина різниця – в IL, де string.Empty використовує опкод ldsfld, а “” – опкод ldstr, але це тільки тому, що string.Empty статична, і обидві інструкції роблять одне й те саме. Якщо ви подивитеся на створену збірку, вона буде точно такою ж.

Assembly code:

 

Published inВідповіді на запитання C#
Subscribe
Notify of
guest
0 комментариев
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x