?
Structure types have value semantics. That is, a variable of a structure type contains an instance of the type. By default, variable values are copied on assignment, passing an argument to a method, and returning a method result. In the case of a structure-type variable, an instance of the type is copied. For more information, see Value types. Typically, you use structure types to design small data-centric types that provide little or no behavior. For example, .NET uses structure types to represent a number (both integer and real), a Boolean value, a Unicode character, a time instance. If you're focused on the behavior of a type, consider defining a class. Class types have reference semantics. That is, a variable of a class type contains a reference to an instance of the type, not the instance itself.
"Копировать"... я надеюсь, стринги в 2Гб они не копируют? или да? (джс не копирует)
это ты мне говоришь про реализацию в конкретной среде. я спрашиваю различия типов (структуры и класса) относительно твоего выражения про описание структуры чего-то > Ну как-то надо назвать штуку для группировки нескольких значений.
стринга в .net это не структура
А tupple (не массив) - это тоже структура/рекорд? Короче, много вопросов к термину "структура"
туплы в .net ? там структура, да
Вопрос ведь был не о том. Когда "копируешь" строку, конкатенация, например, 2-х Гб строки с самой собой - сколько памяти выделяется в .нет?
тогда не понял вопроса, к-ый был "не о том". если делать str(2gb) + str(2gb), будет str(4gb)
лол... ок))) В джс не будет выделяться новых 4 Гб
хотите сказать там будет строка которая состоит из двух ссылок на строку с 2 гб?
да. можено в дев-тулс посмотреть. А ещё Мура в своих видео это показывает на примерах - я проверял, в джс даже примитивы хранятся распределённо.
а-ля обджекты в пайтоне?)
Там сложная структура данных. Надо хорошо в V8 шарить. Но в целом результат такой (я проверял) - память не удваивается при конкатенации строки
Обсуждают сегодня