Есть код 1
int i = 123;
string s = $"{i}";
И есть код 2
int i = 123;
string s = $"{i.ToString()}";
В первом варианте будет происходить боксинг или с интерполяцией не происходит такого и компилятор понимает что надо вызвать ToString?
Ответ
1)
string s = $"{i}";
превращается в string.format, который принимает object'ы, боксинг присутствует
2)
string s = $"{i.ToString()}";
передается строка, боксить нечего
Комментариев нет:
Отправить комментарий