Size: a a a

2021 July 11

rr

razumovsky r in CODE BLOG / C#
конечно упаковывается
источник

rr

razumovsky r in CODE BLOG / C#
ты видел реализацию консоль райт лайна для твоего кастомного Поинт ?
источник

rr

razumovsky r in CODE BLOG / C#
у райт лайна реализация вроде под обджект только
источник

rr

razumovsky r in CODE BLOG / C#
и там под капотом вызывается ту стринг
источник

rr

razumovsky r in CODE BLOG / C#
вот и упаковка
источник

rr

razumovsky r in CODE BLOG / C#
от дубликата будет вызван ту стринг
источник

rr

razumovsky r in CODE BLOG / C#
можешь в ту сринге какой то инкремент поставить, и увидишь что оригинал не изменился
источник

rr

razumovsky r in CODE BLOG / C#
классная задачка у Акиньшина в проблем бук на эту тему ))
источник

I

Iaroslav in CODE BLOG / C#
источник

I

Iaroslav in CODE BLOG / C#
источник

I

Iaroslav in CODE BLOG / C#
я может всех тонкостей не могу уловить, но вот пример как раз из рихетра
источник

I

Iaroslav in CODE BLOG / C#
реализация поинта такая же
источник

rr

razumovsky r in CODE BLOG / C#
и везде у него поинт — структура ?
источник

I

Iaroslav in CODE BLOG / C#
да
источник

rr

razumovsky r in CODE BLOG / C#
обрати внимание
источник

rr

razumovsky r in CODE BLOG / C#
что ты вызываешь в первом скрине — ту стринг на прямую
источник

rr

razumovsky r in CODE BLOG / C#
а во втором, поидее, передается сразу весь экземпляр
источник

rr

razumovsky r in CODE BLOG / C#
и там и будет упаковка
источник

rr

razumovsky r in CODE BLOG / C#
покажи второй вызов
источник

t

this. in CODE BLOG / C#
если ты сам вызываешь свой tostring тогда упаковки не будет, если ты просто передаешь структуру, тогда она приведется к объекту и тогда уже будет вызван tostring объекта
источник