この質問は Symbian OS に関連していますが、C/C++ のベテランも私を助けることができると思います。オープン ソース ライブラリを Symbian OS にコンパイルしています。GCCEコンパイラを使用すると、エラーなしでコンパイルされます(いじくり回した後:))。コンパイラをARMV5に変更したところ、静的const構造体の定義で複数のエラーが発生しました。たとえば、構造体があります:
typedef struct Foos{
int a;
int b;
} Foos;
そして、Foos 型の const 構造体の次の定義
static const Foos foo = {
.a = 1,
.b = 2,
};
GCCE ではこれに問題はなく、ARMV5 では ".a = 1, .b = 2," で "expected an expression" エラーが発生します。これに関して私がグーグルで検索したことから、このメソッドは C では合法であるが、C++ では違法であると考えられます。その場合、C++ で const 構造体を宣言する可能性は何ですか? そうでない場合は、他のヘルプをいただければ幸いです。
前もって感謝します :)