Junior — Middle
Структураи маълумоти String дар хотираи амалиётӣ чӣ гуна ташкил шудааст?
sobes.tech AI
Ҷавоб аз AI
Дар C# сатр (string) объекти тағйирнопазир (immutable) аст, ки дар хотира ҳамчун пайдарпайии аломатҳо дар кодекси UTF-16 намоиш дода мешавад.
Сохтори маълумоти String дар хотира дарбар мегирад:
- Объект дар хати идорашаванда (heap), ки дорои:
- Сарлавҳаи объект (метадатаҳо барои ҷамъкунандаи партов ва навъ).
- Майдони дарозии сатр (соли аломатҳо).
- Масиви аломатҳо
char[], ки ҳар аломат 2 байт (UTF-16) мегирад.
Азбаски сатрҳо тағйирнопазиранд, дар вақти тағйирот объект нав сохта мешавад, ва кӯҳна дар хотира боқӣ мемонад то ҷамъкунандаи партов онро тоза кунад.
Масалан:
string s = "Масалан";
// Дар хотира, s объект бо дарозии 7 ва масиви аломатҳо 'М','а','с','а','л','а','н'
Аз ин рӯ, сатр объект бо дарозии муайян ва пайдарпайии аломатҳо мебошад, ки барои истифодаи бехатар ва самаранок дар .NET оптимизатсия шудааст.