とあるコマンドの(サブ)オプションをヘッダに定義するのですが、
メンテ・拡張しやすくする為に悩んでいます。
イメージは以下で、AとかBとか区別しています。
皆さんならどう判り易く宣言しますか?

cmd optA ← サブオプションは受け付けない
cmd optB ← サブがなくとも実行可能
cmd optB suboptα ← サブがありでも実行可能
cmd optC ← サブがなくとも実行可能
cmd optC suboptβ ← サブがありでも実行可能
cmd optC suboptγ ← 複数のサブがありでも実行可能

・enumでopt, suboptを個別に羅列宣言をする。
・構造体配列にガシガシ書き込む。