|
1
5
首先,您的代码包含一个bug。运行以下命令:
然后:
你需要重新分配
即使修复了bug,您仍然会注意到
右侧操作创建一个临时nxn数组,然后将临时数组分配给左侧。 如果希望避免临时数组分配,可以改为写:
您会注意到这两种方法的计时非常接近,尽管
至于垃圾收集,这只是你计时方法的结果。使用起来更好
|
|
|
2
3
为什么
每次复印后
原则上,代码可以简化为一组while循环,但它更通用。它适用于任意的视图
由于函数更复杂,编译器也不会对它们进行优化。也就是说,有一个建议是编译器应该内联它们,但它没有这样做。这表明所显示的函数是非平凡的。
对于一组循环,编译器将最里面的循环减少为三个加法(每个加法用于指向
tl;博士
企业内部的呼叫链
请注意,性能取决于编译器。如果我们看一维的情况
|