SORU
4 Kasım 2011, Cuma


Statik için başvurusu geçersiz constexpr char[]

Sınıfımdastatic const char bir dizi yapmak istiyorum. GCC şikayet etti ve şimdi bana bir tanımsız başvuru söylüyor olsa da constexpr, kullanmam gerektiğini söyledi. Eğer dizinin üyesi olmayan bir sonra yaparsam derler. Neler oluyor?

// .hpp
struct foo {
  void bar();
  static constexpr char baz[] = "quz";
};

// .cpp
void foo::bar() {
  std::string str(baz); // undefined reference to baz
}

CEVAP
4 Kasım 2011, Cuma


Cpp dosyasına ekleyin:

constexpr char foo::baz[];

Sebep: Sana sağlamak zorundatanımstatik üye olarak yayınlamıştır. Bildirgesi ve başlatıcı sınıf tanımı içinde gitmek, ama üye tanımı ayrı olmalı.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ELPRESADOR

    ELPRESADOR

    21 HAZİRAN 2008
  • Juan Carlos Candela Bordera

    Juan Carlos

    4 Mart 2009
  • Lupe Fiasco

    Lupe Fiasco

    23 ŞUBAT 2006