3

我有这个代码:

privateMesh.face[positionSaverFN].vertexMDL = new vector3D[privateMesh.face[positionSaverFN].numOfPoints];

这段代码运行了 67,000 次,完成它需要 0.165 秒。对我来说太长了,我正在努力寻找最快的方法。

有什么建议么?

4

2 回答 2

5

好吧,如果你想做 60000 次,你能做的并不多。由于使用率很高new,它会尽可能快。

解决它的一种方法可能是重新设计您的应用程序,这样它就不必执行60000 次。可能你可以做一次,然后重复使用它。

通常最快的做某事的方法就是不做:-)

于 2013-07-27T12:51:56.597 回答
1

计算所需的内存总量。分配一个大缓冲区。通过指针数组访问,指向此缓冲区的后续区域。显然你需要初始化这个数组,但它会比使用 malloc 分配小区域快得多。

于 2013-07-27T12:59:41.567 回答