Middle
Semantikalar orasidagi farqlar nima?
sobes.tech AI
AIdan javob
Қиймат турлари:
- Улар берилиш ёки функцияга ўтказилганда кўчирилади.
- Ҳар бир ўзгариш янги кўчирма яратади.
- Улар стекда сақланади (ўзининг кўп ҳолатларида).
- misollar:
struct,enum, асосий турлар (Int,Double,Bool,String).
Манба турлари:
- Улар ҳавола орқали ўтказилади.
- Бир неча ўзгарувчи бир хил намунага ишора қилиши мумкин.
- Бир ўзгарувчи орқали ўзгариш, бу намунага бўлган барча ишораларга таъсир қилади.
- Улар кучада сақланади.
- misollar:
class,func.
Тўғрилаш:
| Хусусият | Қиймат турлари | Манба турлари |
|---|---|---|
| Нусхалаш | Қиймат бўйича | Манба бўйича |
| Ўзгартириш | Яна бир нусха яратилади | Барча ишораларга таъсир қилади |
| Сақлаш | Stack (одатда) | Heap |
| Ишлаш самарадорлиги | Одатда тезроқ (heap ва ARC учун қўшимча харажатларсиз) | Аста-секинроқ (heap ва ARC сабабли) |
| Тўғрилик хавфсизлиги | Автоматик равишда, тўғриликка мос (ҳар бир тўплам ўз нусхасида ишлайди) | Турли тўпламлардан киришда синхронлаштириш талаб қилинади |