std :: copy将双精度数组复制到浮点数组中?

时间:2016-04-21 07:39:56

标签: c++ copy std

我正在处理一个非常脱节的API,它让我在自己的内部类型之间弥合了很多差距。

在一些地方,我使用std :: copy将浮点数组扩展为双精度数组,或者从双精度数组降级为浮点数组,以便在一些更不一致的对象之间穿梭。

问题是: 这仍然被认为是最安全,最便捷的方式,还是我应该考虑推荐的替代方案?

如果有一些特定于平台的情况会有帮助,以下是平台案例: 部署是内部的,非常有限,只有gcc 4.8,只有Linux,非常本地和受控使用。我可以考虑“危险的”平台特定替代方案,如果它们在性能方面值得,可能在其他平台上未定义。

副本的大小在少数几个三元组之间变化,很少在一个或两个数组中有数千个条目。源和目标的长度总是相同的,因此最简单的情况是可以复制,从不是远程或有条件的。

1 个答案:

答案 0 :(得分:1)

你做这件事的方式非常好,而且会有接近最佳的表现。如果你真的想要挤压每一滴性能,你可能需要亲自编写一些SSE代码(例如使用CVTPD2PS),但除非分析显示这些转换成为热点,否则我不会烦恼。你的申请。