Sobes.tech
Junior

Оё дар Go типбандии динамикӣ вуҷуд дорад?

sobes.tech AI

Ҷавоб аз AI

Барои дар Go типгузории динамикӣ дар маънои классикӣ вуҷуд надорад. Go як забони бо типгузории қатъии статикӣ аст, ки дар он навъи тағйирёбанда дар вақти компилятсия муайян мешавад ва дар вақти иҷро тағйир намеёбад.

Бо вуҷуди ин, дар Go интерфейсҳо ва навъи interface{} мавҷуданд, ки имкон медиҳанд бо ҳар гуна навъи додаҳо кор кардан, ки як чандирии муайянро ба монанди типгузории динамикӣ фароҳам меоранд. Аммо кор бо чунин арзишҳо талаб мекунад, ки навъи онҳоро равшан тағир диҳед ё истифодаи assertion-и навъро кунед.

Маслиҳати истифодаи интерфейси холӣ:

var x interface{}
 x = 42
 x = "сатр"

// Барои гирифтани навъи мушаххас, бояд тағир дод:
if str, ok := x.(string); ok {
    fmt.Println("Ин сатр аст:", str)
}