SORU
19 EYLÜL 2008, Cuma


Nereye &; sanal işlev çağrısı " saf " çöküyor mu?

Bazen hata ile benim bilgisayarda crash programları dikkat: "". saf sanal işlev çağrısı

Nasıl bu programlar, nesne veya soyut bir sınıf oluşturulacak bile derlemek?

CEVAP
19 EYLÜL 2008, Cuma


Eğer bir yapıcı veya yıkıcı bir sanal işlev çağrısı yapmaya çalışırsanız neden olabilirler. Sen mi yapmak bir sanal işlev çağrısı bir yapıcı veya yıkıcı (türetilmiş sınıf nesnesi bulunmadı inşa veya zaten yok) çağırır temel sınıf sürümü, hangi durumda bir saf sanal işlevi yoktur.

class Base
{
public:
    Base() { doIt(); }  // DON'T DO THIS
    virtual void doIt() = 0;
};

class Derived : public Base
{
    void doIt() {}
};

int main(void)
{
    Derived d;  // This will cause "pure virtual function call" error
}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • CommonArtisan

    CommonArtisa

    7 Temmuz 2012
  • CrazyMan

    CrazyMan

    14 Mayıs 2008
  • Study with Substance P

    Study with S

    31 Mayıs 2008