
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Monday 02 March 2009, Thorsten Ottosen wrote:
you might not expect 95% of all lines to be less than 512 chars. Thus you can use
boost::auto_buffer<char,512> buffer;
to avoid heap-allocations in 95% of the cases. This can be a major speed-improvement. For the remaining 5% of the cases, the buffer will be placed on the heap, but the code from the user's persective remains the same.
- From glancing at the implementation posted to the list, it does not appear to fall back to heap allocation once the maximum stack capacity is reached. push_back() simply asserts that the stack capacity hasn't been used up yet. Although, I would be able to use such a container if it were added as a utility to boost, as I implemented one for my own use as an internal optimization in Boost.Signals2 (boost/signals2/detail/stack_vector.hpp and stack_allocator.hpp). -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux) iEYEARECAAYFAkmr/MsACgkQ5vihyNWuA4XaiQCgtM4TxduJuLQ6+Zw7+Jlw2ddp 1DYAoNj+MXS6R+jHy3v7HJHsbjfbJWlf =5p8M -----END PGP SIGNATURE-----