
Martin <adrianm@touchdown.se> writes:
David Abrahams <dave <at> boost-consulting.com> writes:
"Paul A Bristow" <pbristow <at> hetp.u-net.com> writes:
As another silent downloader, I just want to agree that we really do need a fixed_string,
Why?
I found it useful when working with C APIs.
With a fixed_string type I can do:
boost::fixed_string<30> str; someoldcapi(str.buffer()); str.find(...)
instead of first using a char array and then copy it to a basic_string.
std::string str(30, 0); someoldcapi(&str[0]); str.resize(str.find(0)); str.find(...) If we need a class to help with such a transition, we should design it to make some of the operations more natural. But even that is not probably worth the trouble.
Second use for me is to have a basic_string compatible buffer to use in shared memory/IPC.
struct commandlineargs { boost::fixed_string<20> arg1; boost::filesystem::basic_path<boost::fixed_string<256> > path1 };
Isn't that what the allocator argument to basic_string is for?
Unfortuntaly the review version of the fixed_string doesn't work with any of the above cases (first case needs a setlength() call).
Speaks volumes. -- Dave Abrahams Boost Consulting www.boost-consulting.com