Junior — Middle
Чӣ гуна интиқоли маълумот дар дохили функсия ё усул амалӣ мешавад?
sobes.tech AI
Ҷавоб аз AI
Дар C# интиқоли маълумот ба функсия ё метод метавонад бо чанд роҳ анҷом дода шавад:
- Ба арзиш (by value) — арзиши аргумент нусхабардорӣ мешавад. Тағйирот дар дохили метод ба маълумоти аслӣ таъсир намерасонад.
- Ба истинод (ref) — истинод ба тағйирёбанда дода мешавад, тағйирот дар дохили метод ба оригинал таъсир мерасонад.
- Параметри баргардон (out) — барои баргардонидани маълумот аз метод ба коди даъваткунанда истифода мешавад, тағйирёбанда пеш аз даъват бояд оғоз нашуда бошад.
- Параметрҳо бо калимаи калидии
in— интиқол тавассути истинод, аммо танҳо барои хондан дар дохили метод.
Масалан:
void UpdateValue(ref int x) {
x = 10; // тағйир медиҳад арзиши тағйирёбанда, ки тавассути истинод дода шудааст
}
int a = 5;
UpdateValue(ref a);
// ҳоло a == 10