Я знаю, что строки имеют переменную длину, поэтому они нуждаются в переменном пространстве в памяти для хранения. Когда мы определяем строковый элемент в struct
, размер struct
будет иметь переменную длину.
Пожилые языки управляли этим, используя строки фиксированной длины. Тем не менее, нет способа определить строки фиксированной длины в С#, а С# управляет нормальными строками в struct
довольно хорошо.
Это становится более странным, если мы определяем массив таких struct
s или просто массив строк. В результате любого изменения (уменьшения/увеличения) в длине одной строки все форвардные struct
должны быть сдвинуты.
Как С# обрабатывает строки переменной длины в структурах?