c++ - .NET 4、C++、if...else 和 switch() 对性能的影响

标签 c++ .net performance algorithm

现在在我的应用程序中我正在使用这种结构

if (e->UserState->Equals(1)) {} //stuff 1
else if (e->UserState->Equals(2)) {} //stuff 2
... // e - EventArgs of .NET 4 WebClient class

我应该更好地定义

int n = (int)e->UserState;

并使用 switch()

switch(n)
{
  case 1:
  //stuff 1
  break;

  case 2:
  //stuff 2
  break;
}

它会以某种方式影响性能吗? (e->UserState 的大约 15 种变体)

最佳答案

(about 15 variants of e->UserState)

我会把它写成 switch 形式,纯粹是为了可读性!至于性能,您可以通过分析进行检查,但我怀疑这种差异是否具有统计显着性。

关于c++ - .NET 4、C++、if...else 和 switch() 对性能的影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13948603/

相关文章:

matlab - 更快的投影范数(二次形式、度量矩阵...)式计算

c# - 如何在 Visual Studio 2008 的 Crystal Reports 中迭代嵌套的 .NET List<>?

java - 方法不必要地被调用?

c++ - 将 STL map 打印为表格

c++ - 如何在 QT GUI 应用程序中进行正确的线程处理?

c# - 进程开始时间

.net - mvc中表名与类的映射

android - 为什么在Web View 中渲染组件的速度变慢?

c++ - Boost beast::websocket 回调函数

c++ - 打开 CV 水彩滤镜。 (遍历图像的像素)