I've got a gtkmm-2.2 application that stores it's data in the ost persistent streams.  To date, I've been using the 1.0.x version of the common C++ library for this persistence function.

I've noticed that in the 1.0.x versions of the library, the exceptions for persistent streams basically don't work and the application just calls abort().  So, I figure that it's time to upgrade.

While porting to the new version of the library, I notice that there is a ost::String class, which is the only way to get strings in and out of the persistent streams.

However, the gtkmm library is designed to integrate nicely with std::string. 

What's the best way to integrate the two packages so that they work nicely with each other?

I was consdering writing a number of global type conversion operators, but that didn't seem to work pretty well.

Then I thought that I should create myown sub-class off of ost::String to add the additional type conversion operators that I needed to convert to std::string when needed in a nice, quite, and clean manner.  But this appears not to work nicely either.

I'm open to suggestions.

   Thanks,
        Erik.