Sé que las cadenas tienen una longitud variable, por lo tanto, necesitan espacio variable en la memoria para ser almacenadas. Cuando definimos un elemento de cadena en struct
, el tamaño de struct
sería de longitud variable.C# gestión de cadenas en las estructuras
Los idiomas antiguos lo lograron mediante el uso de cadenas de longitud fija. Sin embargo, no hay forma de definir cadenas de longitud fija en C#, y C# maneja cadenas normales en struct
s bastante bien.
Esto se vuelve más extraño cuando definimos una matriz de tales struct
s, o simplemente una matriz de cadenas. Como resultado de cualquier cambio (disminución/aumento) en la longitud de una secuencia, todos los struct
s hacia adelante se deben desplazar.
¿Cómo maneja C# las cadenas de longitud variable en las estructuras?
C# no es C: asume que la memoria se gestiona de la misma manera en ambos. – Oded
Sí ... Mi culpa. –