SORU
4 ŞUBAT 2011, Cuma


Ne zaman bir yıkıcı oluşturmalıyım?

Örneğin:

public class Person
{
    public Person()
    {
    }

    ~Person()
    {
    }
}

Ne zaman el ile bir yıkıcı oluşturmalıyım? Ne zaman bir yıkıcı oluşturmak için gerekli mi?

CEVAP
4 ŞUBAT 2011, Cuma


Ne zaman el ile bir yıkıcı oluşturmalıyım?

Hemen hemen hiç.

Genellikle bir tek sizin sınıf nesnesi gittiğinde ise temizlenmesi gereken bazı pahalı yönetilmeyen kaynak tutan bir yıkıcı oluşturur. Daha iyi kaynak temizlenir emin olmak için tek kullanımlık desen kullanın. Bir yıkıcı eğer nesnenin tüketici atılması unutursa, kaynak hala sonunda temizlenmiş olur o zaman aslında bir güvence. (Belki.)

Bir yıkıcı yaparsanızson derece dikkatli olunveçöp toplayıcı nasıl çalıştığını anlamak. Yıkıcılargerçekten çok garip:

  • Konu hakkında açmamıştı; kendi iş parçacığı üzerinde çalışır. Kilitlenmeleri! neden yok
  • İşlenmeyen bir özel durum yıkıcı atılan kötü bir haber. Onu yakalayacak olan kendi iş parçacığı üzerinde;?
  • Bir yıkıcı bir nesnede çağrılabilirsonrayapıcı ama başlaröncekurucu bitirir. Düzgün yazılmış bir yıkıcı değişmezler kurucu kurulan güveniyor.
  • Bir yıkıcı"", ölü bir nesne tekrar yapma nesne. hayata döndürebiliriz Bu gerçekten çok garip. Yapma.
  • Bir yıkıcı asla çalışabilir; sonuçlanması için nesne hiç zamanlanmış güvenebilirsiniz.muhtemelenolacak, ama bu bir garanti değil.

Normalde doğru olan neredeyse hiçbir şey bir yıkıcı doğrudur. Gerçekten çok dikkatli olun. Doğru bir yıkıcı yazmak çok zor.

Ne zaman bir yıkıcı oluşturmak için gerekli mi?

Yıkıcılar işleme derleyici kısmı test ederken. Hiç bu kadar üretim kodu yapmaya ihtiyacım olmadı. Ben nadiren yönetilmeyen kaynakları manipüle eden nesneleri yazmak.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Chriselle Lim

    Chriselle Li

    26 Ocak 2008
  • hitcreatormusic2

    hitcreatormu

    21 Mayıs 2010
  • Jon Reed

    Jon Reed

    14 AĞUSTOS 2006