SORU
2 Temmuz 2009, PERŞEMBE


C# bir yıkıcı ve bir sınıfta bir Finalize yöntemi arasındaki fark nedir?

Eğer fark ise orada, bir yıkıcı ve bir sınıfta bir Finalize yöntemi arasındaki nedir?

Geçenlerde Visual Studio 2008 bir yıkıcı bir Finalize yöntemi ile eş anlamlı, Visual Studio, aynı anda bir sınıfta her iki yöntem tanımlamak izin vermiyor, yani gördüğü keşfetti.

Örneğin, aşağıdaki parça kodu:

class TestFinalize
{
    ~TestFinalize()
    {
        Finalize();
    }

    public bool Finalize()
    {
        return true;
    }
}

Verir yıkıcı Sonuçlandırmak için çağrıda aşağıdaki hata:

Çağrı aşağıdaki yöntemleri veya özellikleri arasındaki belirsiz: 'TestFinalize~.() TestFinalize' ve 'TestFinalize.() Finalize'

Ve eğer Sonuçlandırmak için çağrı diye, aşağıdaki hata verir:

Yazın 'ManagementConcepts.Hizmet.TestFinalize üye olarak düşünülebilir zaten 'Finalize' aynı parametre türleri ile

CEVAP
2 Temmuz 2009, PERŞEMBE


C bir yıkıcı# geçersiz kılar 2* *yöntemi. Sanagerekyıkıcı sözdizimi bunu yapmak için kullanın. Elle geçersiz kılma.

Finalize yöntem bildirimi yapmak için çalışıyor temelde 10* *temel sınıf yöntemi. Derleyici new değiştirici eğer işe yarayacak olsaydı () kullanarak susturmuş olabilir hangi bir uyarı vermek için neden olacaktır. Burada dikkat edilmesi gereken önemli şey buolamazhem bir yıkıcı ve Finalize bir yöntem olan ve bir hata neden olur yani 6* *ve aynı zamanda aynı adı taşıyan new üye ilan ediyorum (amaolabilirönerilmez , ancak, eğer bir yıkıcı bildirmek için değil public new void Finalize() bir metot).

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Floortile83

    Floortile83

    16 Ocak 2010
  • Rockstar Games

    Rockstar Gam

    17 ŞUBAT 2006
  • waterfairy17

    waterfairy17

    9 Aralık 2007