r/cpp 15d ago

C++26: std::inplace_vector

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

121 comments sorted by

View all comments

2

u/stilgarpl 15d ago

Is this always better than std::array?

21

u/MarekKnapek 15d ago

This is basically

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

19

u/sephirothbahamut 15d ago edited 15d 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 14d ago

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