Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
typ "identifier" ma niedozwoloną tablicę o zerowym rozmiarze
Uwagi
Element członkowski struktury lub pola bitowego zawiera tablicę o zerowym rozmiarze, która nie jest ostatnim elementem członkowskim.
Ponieważ można mieć tablicę o zerowym rozmiarze jako ostatni element członkowski struktury, należy określić jej rozmiar podczas przydzielania struktury.
Jeśli tablica o zerowym rozmiarze nie jest ostatnim elementem członkowskim struktury, kompilator nie może obliczyć przesunięcia pozostałych pól.
Example
Poniższy przykład generuje C2229:
// C2229.cpp
struct S {
int a[0]; // C2229 zero-sized array
int b[1];
};
struct S2 {
int a;
int b[0];
};
int main() {
// allocate 7 elements for b field
S2* s2 = (S2*)new int[sizeof(S2) + 7*sizeof(int)];
s2->b[6] = 100;
}