Junior — Middle
Proqram kodunun tərtib olunması zamanı ümumi funksiyaların icrası necə həyata keçirilir?
sobes.tech Süni İntellekt
AI-dan cavab
Genel funksiyalar kompilasiya zamanı "monomorfizasiya" və ya şablonların instansiyalaşdırılması mexanizmi ilə işlənir. Bu, kompilyatorun istifadə olunduğu hər bir tip üçün funksiyanın konkret versiyalarını yaratması deməkdir.
Məsələn, əgər sizdə aşağıdakı kimi ümumi funksiya varsa:
func swapValues<T>(_ a: inout T, _ b: inout T) {
let temp = a
a = b
b = temp
}
Və onu Int və String ilə çağırırsınızsa, kompilyator iki versiya yaradacaq: biri Int üçün, digəri String üçün. Bu, dinamik tip təyin etmə ilə əlaqəli vaxt xərclərini azaltmağa kömək edir.