Junior — Middle
Kako je organizovana struktura podataka String u operativnoj memoriji?
sobes.tech АИ
Одговор од АИ
У C#-у, низ (string) је непокретан (immutable) објекат који је у меморији представљен као низ карактера у кодирању UTF-16.
Структура података String у меморији укључује:
- Објекат у управљаном хипу (heap), који садржи:
- Заглавље објекта (метаподаци за сакупљача смећа и тип).
- Поље дужине низа (број карактера).
- Масаив карактера
char[], где сваки карактер заузима 2 бајта (UTF-16).
Пошто су низови непокретни, свака измена ствара нови објекат, а стари остаје у меморији до уклањања од стране сакупљача смећа.
Пример:
string s = "Пример";
// У меморији, s чува објекат дужине 6 и масив карактера 'П','р','и','м','е','р'
Стога, низ је објекат са фиксном дужином и низом карактера, оптимизован за сигурну и ефикасну употребу у .NET-у.