Article

C++26: std::inplace_vector

Sandor Dargo ·Sandor Dargo's Blog ·Published 2026-08-26 ·5 min read

This article discusses the new std::inplace_vector feature in C++26, detailing its design and potential use cases. It provides insights into how this feature can improve performance and memory management in C++ applications.

From the article

C++26 is generous with new containers — we’re getting both std::hive and std::inplace_vector . In this post, we’ll look at the latter.

Until C++26, the standard library had no vector-like container with compile-time fixed capacity whose element storage is guaranteed to live inside the container object itself. std::vector obtains storage through its allocator — typically the heap. std::array has a fixed size. If you need a dynamically-resizable array that never allocates — because you’re on bare metal, because allocation latency is unacceptable, or because you need the data to live inside the object for serialization — there was no standard answer.

C++26 adds std::inplace_vector<T, N> in the new <inplace_vector> header, originally introduced by P0843R14 and subsequently refined by later…


Share this resource


Discovered 2026-08-27 Source Sandor Dargo's Blog Archive 2026-08 →