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

  • jagadambarecords

    jagadambarec

    13 AĞUSTOS 2008
  • KittiesMama

    KittiesMama

    10 AĞUSTOS 2008
  • PorterRobinsonVEVO

    PorterRobins

    11 Kasım 2013