Junior — Middle
Программалоодо тип деген эмне экенин түшүндүрө аласызбы?
sobes.tech AI
AIден жооп
Программалооодо, өзгөчө Go тилде, түрдүк ырастоо (type assertion) — бул интерфейс түрүндөгү мааниден так түрдүн маанисин алуу жолу.
Goдо, интерфейс түрүндөгү өзгөрмөлөр ар кандай түрдөгү маанилерди камтышы мүмкүн, жана түрдүк ырастоо интерфейстен так түрдү текшерүүгө жана чыгарып алууга мүмкүндүк берет.
Мисал:
var i interface{} = "салам"
s, ok := i.(string) // s "салам" болот, ok — чын
эгер ok {
fmt.Println(s) // чыгарат: салам
} башка {
fmt.Println("i string камтыбайт")
}
Эгер түрдүк ырастоо ийгиликсиз болсо жана экинчи параметр ok колдонулбаса, паника пайда болот. Ошондуктан, көбүнчө эки кайтарымдуу мааниси бар форманы колдонушат коопсуз текшерүү үчүн.