MAIN FEEDS
Do you want to continue?
https://www.reddit.com/r/cpp/comments/1vzc5dg/c26_stdinplace_vector/p65cvtu/?context=3
r/cpp • u/User_Deprecated • 6d ago
121 comments sorted by
View all comments
5
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.
18
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.
21
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.
4
That's not far more complex. Marginal additional complexity.
5
u/stilgarpl 6d ago
Is this always better than std::array?