それぞれが構造体の (オブジェクトの) 順序を示すメンバーを持つ構造体を作成できるようにしたいと考えています。実行時のオーバーヘッドはなく、コンパイル時に序数を使用できるはずです。
何らかの理由で静的変数がコンパイル時に機能しないため、単純なアプローチは機能しません。
int nextOrdinal() {
static int ordinal;
return ordinal++;
}
struct S1 {
enum ordinal = nextOrdinal();
}
struct S2 {
enum ordinal = nextOrdinal();
}
現時点では、構造体がどのように作成されるかは重要ではありません。問題は、コンパイル時に状態を保持できないことのようですが、私は正しいですか?