An Immutable String class for C++