Just out of curiosity, since mysqlpp::String is _not_ derived from
std::string, I was wondering about the decision process behind this,
since it seems to be a natural thing to do. I know the std library
stuff doesn't lend itself well to being derived from, but std::string
seems to make a decent base class for a more fleshed-out string class,
or in this case, one with extra special ninja powers.
When I took over my project, there was a class (really a namespace
masquerading as a class since all the methods were static) called
StringUtils, which implemented a bunch of useful utility-type functions
lacking in std::string. Eventually, I just transformed it into a class
derived from std::string which makes using this stuff more convenient.
Since my derived class is still a std::string, it's pretty transparent
As always, thanks to the MySQL++ team and volunteers.
Warren Young wrote:
> 3 months worth of fixes and tweaks in this one. Highly recommended
> for all MySQL++ v3 users. This may be the last version of MySQL++
> before v3.1.0.
> o Fixed bug where initting a Query with a query string and then
> appending more to it with operator <<() would start overwriting
> the beginning of the buffer. Thanks for the fix go to Chris
> o Added String::empty(), to parallel std::string better.
> o Added SQLTypeAdapter ctor for Null<String>, to allow SSQLS with
> NULL BLOB columns. Thanks for this patch go to Russell Robinson.
> o Passing on "throw exceptions" flag in Query::storein() to the
> temporary Row objects it creates. (Should have done this
> all along.)
> o All MySQL++ classes with operator() and at() methods now
> throw the new BadIndex exception on out of range indices now,
> unconditionally. Before, it was a mishmash of MySQL++-specific
> mechanisms, std::range_error, and unchecked access.
> o Fixed some bugs in load_jpeg and cgi_jpeg examples that prevented
> them from working correctly on Windows.
> o Squished some warnings and incompatibilities that caused
> difficulty with Solaris CC.
> o Several minor fixes to allow building on Cygwin again.
> o Dedicated VC++ 2008 support. (Not just a clone of VC++ 2005
> project files in a different directory.)
> o Lots of documentation improvements.
> As always, it's available at http://tangentsoft.net/mysql++/