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

  • Le Cargo !

    Le Cargo !

    24 HAZİRAN 2007
  • Max Lee

    Max Lee

    18 AĞUSTOS 2006
  • mobilenet.cz

    mobilenet.cz

    26 NİSAN 2008