C 标准是否需要较差的 Iostream 性能?
尽管声称 C 标准库 iostream 实现存在固有的低效率,但实际情况是更加细致。
标准要求
2006 年 C 性能技术报告承认某些 iostream 方面需要额外的实现开销。然而,它也强调可以通过编译器优化和链接器增强来显着减少这种开销。
编译器实现
各个编译器供应商以不同的方式实现了 iostreams 库。一些编译器提供高度优化的版本,而其他编译器可能会表现出更大的开销。
基准
将 iostream 与内部缓冲的自定义实现进行比较的基准揭示了性能差距。 Iostreams 由于以下原因而产生额外费用:
缓解开销
可以应用优化来减少 iostream 开销:
结论
虽然 C 标准并不严格要求较差的 iostream 性能,但其设计可能会导致效率低下。然而,编译器优化和正确的实现可以最大限度地减少这种开销,使 iostream 在实际场景中与自定义缓冲区管理相当。
以上是C 标准是否要求低效的 Iostream 性能?的详细内容。更多信息请关注PHP中文网其他相关文章!