Başlıkta yazdığım gibi scope ne işe yarar nasıl kullanılır ?
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]
September 09, 2009 scope ne işe yarar nasıl kullanılır ? | ||||
---|---|---|---|---|
| ||||
Başlıkta yazdığım gibi scope ne işe yarar nasıl kullanılır ? -- |
September 10, 2009 scope ne işe yarar nasıl kullanılır ? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Can Alpay Çiftçi (canalpay) | D'de normalde nesneler çöp toplayıcı tarafından ve ilerideki belirsiz bir zamanda sonlandırılırlar. scope, "bu nesneyi bu kapsamdan çıkarken" sonlandır demektir. (C++'da olduğu gibi.) scope kullanmayan bir program:
ve çıktısı: 'foo'yu çağırıyorum Yani sonlandırma işlemi, çöp toplayıcı tarafından en sona bırakılmıştır. Bazen bunu istemeyiz: örneğin bir dosya nesnesinin dosyayı kapatması gerekir... İşte bunun için, eğer o programda 'öğrenci''nin tanımına 'scope' eklenirse:
artık çıktısı şöyle olur: 'foo'yu çağırıyorum Yani artık nesne C++'da olduğu gibi, for döngüsünün kapsamı sonunda sonlandırılmaktadır. Bazen de bir türün bütün nesnelerinin böyle kapsam sonunda sonlandırılması istenir. (Örneğin Dosya gibi bir tür...) O zaman da 'scope' sınıf tanımına eklenir:
Öyle yapınca, 'öğrenci' tanımının da 'scope' olması şart koşulur. Ali -- |