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

  • BenjiManTV

    BenjiManTV

    20 Mart 2011
  • DanceOn

    DanceOn

    6 Mayıs 2006
  • GoogleTechTalks

    GoogleTechTa

    15 AĞUSTOS 2007