Czy możliwe jest posiadanie anonimowej unii z członkami const? Mam następujący:Konstruktor i anonimowy związek z członkami const
struct Bar {
union {
struct { const int x, y; };
const int xy[2];
};
Bar() : x(1), y(2) {}
};
zg ++ 4.5 pojawia się błąd:
error: uninitialized member ‘Bar::<anonymous union>::xy’ with ‘const’ type ‘const int [2]’
'struct {const int x, y; }; 'nie jest poprawny C++. Czy pytasz, czy możesz coś zrobić z GCC? –
Dlaczego jest nieprawidłowa? Czy potrzebuje konstruktora z listą inicjalizacji? – user2023370
Przełącznik GCC -pedantic wydaje się przydatny. "ISO C++ zabrania anonimowych struktur", mówi. Jeśli usuniemy 'const's powyżej, otrzymam to samo ostrzeżenie. – user2023370