1

私は次のように使用されるいくつかの大きな列挙型を持っています

switch(someEnumValue)
{
  case SomeEnum.Value1:
  DoSomething();
  break;

  case SomeEnum.Value2:
  DoSomethingElse();
  break;

  ...

  case someEnum.ValueBigNumber:
  break;
}

Visual Studio 2010で、実際にプログラムを実行したり、列挙型定義の値を手動でカウントしたりせずに、someEnum.SomeValueの整数値を確認する方法はありますか?

4

3 に答える 3

2

今日、私はこの問題の解決策を見つけていました。Visual Studio 拡張機能のようなクールなソリューションが見つかりませんでした。代わりに、テンプレート コードを使用して、この問題に役立つトリックを見つけました。

template<bool, int> class Value_of_someEnumValue_is;
template<>      class Value_of_someEnumValue_is<false, someEnumValue> {};
Value_of_someEnumValue_is<true, someEnumValue> i;

このコードをコンパイルすると、エラー メッセージに「someEnumValue」の整数値が表示されます。:)

于 2014-04-14T13:51:48.270 に答える
0

これには何も組み込まれていませんが、実際の整数値を使用して列挙を直接定義できるため、enum 宣言を一目見ただけでメンバーの値がわかります。

public enum SomeEnum
{
   Value1 = 0,
   Value2 = 1,
   ...
   ValueN = 78897
}
于 2012-06-28T21:17:47.197 に答える
0

なぜこれをやりたいのかは明らかではありませんが、箱から出して考えてみてください。列挙型の定義をExcelにコピーして行番号を確認するか、ビジュアルスタジオの新しいテキストファイルにコピーしてカーソルの行番号を確認してください(IDEの右下を考えてください)。最初から値を選択すると、選択した行数が得られる場合もあります。

于 2012-06-28T21:27:09.030 に答える