Junior — Middle
Оё сохтори дар забони барномасозӣ навъи арзиш ё навъи истинод аст?
sobes.tech AI
Ҷавоб аз AI
Дар забони C# структура (struct) навъи арзишӣ (value type) аст, на навъи истинодӣ.
Ин маъно дорад, ки вақте структураро ба метод таъин мекунем ё мегузаронем, нусхаи ҳамаи маълумоти он сохта мешавад, ва на ҳуҷҷати истинод ба объект дар хотира, чунон ки бо синфҳо (навъҳои истинодӣ) рӯй медиҳад.
Масалан:
struct Point
{
public int X;
public int Y;
}
Point p1 = new Point { X = 1, Y = 2 };
Point p2 = p1; // нусхаи p1 сохта мешавад
p2.X = 10;
// p1.X боқӣ мемонад 1, зеро p2 нусхаи аст
Ин рафтор муҳим аст, ки дар тарҳрезӣ ва оптимизатсияи барномаҳои C# ба назар гирифта шавад.