Junior — Middle
Маслиҳат медиҳед, ки дар кадом ҳолатҳо истифода мешавад, ки дар забони барномасозӣ истифода мешавад?
sobes.tech AI
Ҷавоб аз AI
Дар Го, таъйиноти навъи (Type Assertion) барои гирифтани навъи мушаххас аз арзиши интерфейс истифода мешавад. Ин барои вақте муфид аст, ки шумо тағйирёбандаи навъи interface{} доред ва медонед, ки дар дохили он навъи мушаххасе ҳаст, ки мехоҳед бо он кор кунед.
Маслиҳатҳои истифода:
- Гирифтани навъи мушаххас аз интерфейс барои фаро хондани методҳои махсус.
- Коркарди арзишҳое, ки аз функсияҳое баргардонида мешаванд, ки интерфейсро баргардонанд.
- Дар ҳолатҳое, ки лозим аст, санҷед, ки оё тағйирёбанда навъи муайянро иҷро мекунад, ва логикаи дахлдорро иҷро кунед.
Намунаи код:
var i interface{} = "салом"
// Таъйиноти навъ бо санҷиш
s, ok := i.(string)
if ok {
fmt.Println("Рамз:", s)
} else {
fmt.Println("На рамз")
}
Агар шумо таъйиноти навъро бе санҷиш анҷом диҳед ва навъ мувофиқат накунад, барнома паника мекунад.