2 EKİM 2008, PERŞEMBE
başlatma C sınıfı bir başlatıcı olarak sabit bir dizi
C : aşağıdaki Dersim var
class a {
const int b[2];
// other stuff follows
// and here's the constructor
a(void);
}
Soru, nasıl b const
çünkü kurucu işlev gövdesi içinde başlatmak edemem verilen başlatma listesindeki b başlatılamıyor, anlamak için.
Bu çalışmıyor:
a::a(void) :
b([2,3])
{
// other initialization stuff
}
Edit: farklı örnekleri için b
farklı değerleri olabilir, ama değerleri örnek ömrü boyunca sabit olduğu bilinmektedir. nokta davası
CEVAP
18 EKİM 2011, Salı
C 11 ile bu sorunun cevabını şimdi değişti ve aslında yapabilirsiniz:
struct a {
const int b[2];
// other bits follow
// and here's the constructor
a();
};
a::a() :
b{2,3}
{
// other constructor work
}
int main() {
a a;
}
Bunu Paylaş:
Neden Java Vector sınıfı eski veya kul...
En hızlı sıralama uzunluğu 6 int dizi ...
Paralel olarak birden çok AJAX istekle...
Olası C# dizi başlatma sözdizimi...
Dinamik olarak JavaScript ilişkisel di...