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ş:
::push_back vector) kullanır değeri, s...
Linux pthread_create için başvurusu ge...
g typeinfo için başvurusu geçersiz...
Ubuntu Linux C hata: 'clock_getti...
`__android_günlük_yazdırma' için b...