Why doesn't UE utilize STL containers?

There’s pros and cons with STD Lib, like anything else.

Pro:

  • STD Library is battle hardened and is used in a wide variety of applications from Games to mobile apps, to just about any software used today.
  • Documentation and examples are wide spread.
  • New containers continually added (unordered_set, unique_ptr, etc).
  • Most platforms support STD Lib natively (PS4, XBOne, etc).

Con:

  • Internal memory allocation can be tricky(as pointed out), although it’s far better than it used to be. Especially with the std::move semantics.
  • Good luck debugging them if you run into an issue.
  • New updates could be using C++ features that you currently can’t support due to platform compiler limitations or what not. (C++ 11 adoption was pretty quick, but still took some time).

Overall, I think there is a compelling reason to at least offer some support of the STD Lib in UE5.