Этот вопрос относится к Symbian OS, но я думаю, что ветеран C / C ++ тоже может мне помочь.
Я собираю библиотеку с открытым исходным кодом для Symbian OS. Используя компилятор GCCE, он компилируется без ошибок (после некоторой обработки :)).
Я изменил компилятор на ARMV5, и теперь у меня есть несколько ошибок с определениями статических структур, например:
У меня есть структура:
typedef struct Foos{
int a;
int b;
} Foos;
И следующее определение const структуры типа Foos
static const Foos foo = {
.a = 1,
.b = 2,
};
GCCE не имеет проблем с этим, и ARMV5 идет "ожидаемое выражение" с ошибкой в .a = 1, .b = 2, ". Исходя из того, что я гуглил по этому поводу, я считаю, что этот метод должен быть законным в C, но недопустимым в C ++. Если это так, то каковы возможности объявления константных структур в C ++? Если это не так, тогда любая другая помощь будет оценена.
Заранее спасибо:)