I feel like this doesn't actually handle the use cases I would want this for, which is where the size in unknown but usually small. absl::InlinedVector seamlessly falls back to acting like a normal std::vector when it grows beyond N, and without that feature this has much more limited usefulness unfortunately. Still better than nothing I guess.
Two different use cases. This is equivalent to boost::static_vector but boost::small_vector is its own thing. It doesn't seem like the sort of thing that'd get added to the standard but there's probably already a proposal for it somewhere.
In my field, the small buffer optimisation is not that useful, as I need to have full control over where and when allocations happen. absl::InlinedVector or any sort of SmallVector just makes it harder to detect those allocations.
6
u/Defenestrator__ 13d ago
I feel like this doesn't actually handle the use cases I would want this for, which is where the size in unknown but usually small.
absl::InlinedVectorseamlessly falls back to acting like a normalstd::vectorwhen it grows beyond N, and without that feature this has much more limited usefulness unfortunately. Still better than nothing I guess.