gpt4 book ai didi

c++ - 为什么像虚幻引擎这样的大项目要自己写容器类?

转载 作者:行者123 更新时间:2023-12-03 06:49:16 26 4
gpt4 key购买 nike

我浏览了虚幻引擎的源代码,发现他们使用自己的容器类,例如内部动态数组。但是 C++ STL 提供了(几乎)所有必需的容器类。那么他们为什么要花时间再次开发相同的容器呢?开发者使用std::vector这样的容器不是更方便吗?编写他们的代码而不是试图弄清楚如何使用 TArray 做事引擎中的类?

最佳答案

项目可能不使用 STL 容器的原因有几个:

  • 项目中使用的容器是量身定制的,具有某些不同于 STL 版本的性能特征。
  • 在设计自定义容器时,STL 容器甚至可能还不存在,因此对工作项目进行如此大的更改是不值得的。
  • 虽然大多数开发人员习惯于 STL 容器,但大多数特定项目的贡献者实际上可能更习惯于自定义版本,以及它们应该如何使用,并且重新训练所有这些容器可能也不值得付出努力。

  • 对于任何特定项目,上述部分或全部,甚至其他原因都可能导致决定使用自定义容器。

    关于c++ - 为什么像虚幻引擎这样的大项目要自己写容器类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64158032/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com