Tem*_*mak 2 c++ java arrays initialization
我有一个数组,例如(在Java中)
int[] a = new int[N];
Run Code Online (Sandbox Code Playgroud)
我已经使用它,现在想要有零的数组.什么将花费更少的时间:创建一个新的数组(它将被初始化为零)或迭代现有的数组并用零填充?
我想无论答案是什么,它在C++中都是一样的?
填充现有阵列比创建新阵列更好.相对而言,内存分配可能非常昂贵.实际上,如果你最喜欢的语言为你提供了保证被清零的新阵列,它可能会为你填补它们.
也就是说,这种选择是微观优化.在大多数情况下,它不会产生任何明显的差异.如果你发现自己处于一个特定的情况,你认为它可能会产生重大影响,那么问问分析器要比问StackOverflow要好得多.
编辑我将再添加一个警告:特别是在Java等垃圾收集语言中,如果可以干净地重复使用,那么最好重新使用现有对象而不是创建新对象.一般的经验法则.
Reedit ...除非预期的对象非常短暂.可能还有一些额外的警告.然后回到"询问剖析器".
| 归档时间: |
|
| 查看次数: |
2216 次 |
| 最近记录: |