次のことを考慮してください
public enum E
{
A = 1,
B = 1
}
public string F(E input)
{
return input.ToString();
}
F(E.B); //returns "A"
または(http://msdn.microsoft.com/en-us/library/16c1xs4z.aspx)((E)1).ToString()
に解決される可能性があるため、実行する必要がないことがわかりました。
しかし、それが明示的に選択された値(たとえば)である場合、なぜ奇妙に振る舞う(戻る)のでしょうか?A
B
B
ToString()
A
input
それが可能であることを確認するためにデバッグするときB
、選択したフィールドをコードで取得することは可能ですか?
編集
この質問は、デバッガーがどの値が渡されるかを知る方法に関連していますがF()
、コードではこれを検出することはできないようです?