一般的なアプローチの1つは、MAXを最後の要素として追加することですが、常に望ましいとは限りません。追加要素を定義せずにコンパイル時にenumクラスサイズを取得
他の方法はありますか?可能ですか
constexpr size_t enum_size = sizeof(EnumClassName)/sizeof(std::underlying_type(EnumClassName)?
これは安全ですか?私が詰め物について心配する必要があるかどうか確かめない。私の印象は、列挙型アイテムのサイズがすべて同じであるため、列挙型クラスにパディングするべきではないということです。基になる型としてuint8_tまたはuint16_tのみを使用すると仮定します。
答えは常に1になりませんか? – NathanOliver
@NathanOliverあなたは正しいです...列挙型は集計ではありません.. – szli