SORU
8 HAZİRAN 2010, Salı


Qt desteği sanal saf yuvası mı?

Benim Qt GUİ proje var "yapılandırma sayfaları" tüm doğrudan QWidget ' dan miras kalan sınıfları.

Son zamanlarda, tüm bu sınıflar 2 commons yuvaları (loadSettings() saveSettings()) payı fark ettim.

Bununla ilgili iki sorum var:

  • Sense Ara taban soyut bir sınıf (hadi BaseConfigurationPage adı) saf sanal yöntem olarak bu iki partide de yazmak mı ? (Her türlü konfigürasyon sayfasıolacak her zamanyani diyeceğim şu ki, bu iki yöntem var,"") Evet
  • Benden önce benim kod eğer varsa) : ağır değişiklik Qt sanal saf yuva desteği ? Dikkat etmem gereken bir şey var mı ?

İşte her şeyi anlatan: bir kod örneği

class BaseConfigurationPage : public QWidget
{
  // Some constructor and other methods, irrelevant here.

  public slots:

    virtual void loadSettings() = 0;
    virtual void saveSettings() = 0;
};

class GeneralConfigurationPage : public BaseConfigurationPage
{
  // Some constructor and other methods, irrelevant here.

  public slots:

    void loadSettings();
    void saveSettings();
};

CEVAP
8 HAZİRAN 2010, Salı


Evet, düzenli c saf sanal yöntemleri gibi. Kodu MOC tarafından oluşturulan saf sanal yuva diyor, ama bu temel derslere örneği değil çünkü, Tamam

Yine, düzenli olarak c saf sanal yöntemleri gibi, sınıf yöntemleri bir uygulama verilmiştir kadar başlatılamaz.

Bir alt sınıfta, actuallly yuvaları olarak geçersiz yöntemleri mark gerek yok. Bir, zaten temel sınıf içinde yuva olarak uygulanan ediyorlar. İki, sadece (küçük) biraz daha fazla kod ekliyorsun beri MOC ve derleyici için daha fazla iş yaratmak. Önemsiz, ama neyse.

Yani, bunun için gitmek

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BgirlNilaya

    BgirlNilaya

    29 EKİM 2008
  • Matt Steffanina

    Matt Steffan

    1 EYLÜL 2011
  • Top Gear

    Top Gear

    27 Mart 2006