r/cpp 6d ago

C++26: std::inplace_vector

https://www.sandordargo.com/blog/2026/08/26/cpp26-inplace-vector
169 Upvotes

121 comments sorted by

View all comments

5

u/stilgarpl 6d ago

Is this always better than std::array?

18

u/MarekKnapek 6d ago

This is basically

struct inplace_vector<T, capacity>
{
    size_t len;
    std::array<T, capacity> arr;
}

21

u/sephirothbahamut 6d ago edited 6d ago

far more complex than that, the array has a slot that can fit T, not just T.

With array<T> every element must be validly constructed immediately. You can reduce it to array<T> only for trivially constructable and basic types

4

u/CocktailPerson 6d ago

That's not far more complex. Marginal additional complexity.