【发布时间】:2012-07-17 05:33:04
【问题描述】:
在考虑以 enum 和 int 作为 case 参数的 switch case 的性能时,使用哪个代码 sn-p 更好:
答。
switch ((ToolbarButton)BtnId)
{
case ToolbarButton.SHOWPROPERTYDIALOG:
OnShowProperties();
break;
case ToolbarButton.MOVETOFIRST:
OnFirstMessage();
break;
case ToolbarButton.MOVETOLAST:
OnLastMessage();
break;
}
B.
switch (BtnId)
{
case (int)ToolbarButton.SHOWPROPERTYDIALOG:
OnShowProperties();
break;
case (int)ToolbarButton.MOVETOFIRST:
OnFirstMessage();
break;
case (int)ToolbarButton.MOVETOLAST:
OnLastMessage();
break;
}
【问题讨论】:
-
枚举的默认底层类型无论如何都是
int。 -
我通常发现网络或数据库连接是我的应用程序的性能瓶颈,而不是我的 switch 语句的类型。
标签: c# casting enums switch-statement