Evet, öyle:
#include <string>
int main(void)
{
static const size_t Capacity = 12;
std::string Months[Capacity] = { "Jan", "Feb", "Mar", "April", "May",
"June", "July", "Aug", "Sep", "Oct",
"Nov", "Dec" };
}
Kişisel hatalar muhtemelen başka bir şey ile ilgili idi. std::
'u kullanmayı hatırladınız mı? Bilmeden, her şey olabilirdi. Capacity
yanlış boyutta mıydı?
Kodunuzun aslında sabit bir dizi olmadığını unutmayın. Şu şekilde: Ayrıca
#include <string>
int main(void)
{
static const size_t Capacity = 12;
static const std::string Months[Capacity] = { "Jan", "Feb", "Mar", "April",
/* ^^^^^^^^^^^^ */ "May", "June", "July", "Aug",
"Sep", "Oct", "Nov", "Dec" };
}
, diğerleri gösterecektir olarak aslında, Capacity
gerekmez ve eğer isterseniz size std::string
arayüzünü kaybetmek olsa , const char*
kullanabilirsiniz. Eğer C diziyi initialize olursa (birini kabul edeceğiz rağmen)
ARRAY_CAPACITY nedir? Nasıl ilan edilir? Hangi hatalar (genellikle söylenecek iyi bir şeydir)? Gerçekten bir dizi dize (nesne), c-string dizisi (char dizisi) dizisine gerçekten sahip olmak ister misiniz? – Romain
'#DEFINE ARRAY_CAPACITY 12' –