这是我当前用于交换数组中2个KeyValuePair对象的交换代码:
KeyValuePair<int, T> t = a[i];
a[i] = a[j];
a[j] = t;
使用不安全代码并仅仅交换2个对象的指针会有任何速度优势吗?或者编译器是否有效地将这个安全代码简化为有效地执行此操作?
答案 0 :(得分:4)
答案 1 :(得分:0)
每个优化中都有.Net指针的空间。在你的特殊情况下并没有太多但像循环冗余检查这样的东西,指针可以给我们更好的解决方案。