SORU
18 ŞUBAT 2010, PERŞEMBE


'in korumalı üyeleri başlatma listesi (C )ile başlatma üst

Bir alt sınıf başlatma listesi' veri üyeleri başlatmak için yapıcı üst sınıf korumalı olarak ilan etti? kullanmak mümkün Bunu hemen yapamam. Bu bir çözüm olabilir, ama gerek yoktu olsa güzel olurdu.

Bazı örnek kod:

class Parent
{
protected:
    std::string something;
};

class Child : public Parent
{
private:
    Child() : something("Hello, World!")
    {
    }
};

Bu çalıştığınızda, derleyici söyledi: "'' herhangi bir alan ismi yok bir şey".' Alt sınıf Bu mümkün gibi bir şey mi? Yani, sözdizimi nedir?

Çok teşekkürler!

CEVAP
18 ŞUBAT 2010, PERŞEMBE


Bahsettiğiniz biçimde mümkün değildir. İleri için temel sınıf için bir yapıcı (korunmuş) birlikte ekleyin. Gibi bir şey

class Parent
{
protected:
    Parent( const std::string& something ) : something( something )
    {}

    std::string something;
}

class Child : public Parent
{
private:
    Child() : Parent("Hello, World!")
    {
    }
}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Press Start

    Press Start

    4 HAZİRAN 2006
  • TurkishRoyal

    TurkishRoyal

    16 Ocak 2007
  • UKF Dubstep

    UKF Dubstep

    29 NİSAN 2009