Next: Smart Pointers, Previous: Source Code Layout, Up: Top [Contents]
The String class provided the same functionality of the C++
string except for fewer constructors.  It also inherits OStream
so that you can write to it with the << operator.  It is
defined in string.hpp.
ParmString is a special string class that is designed to be used as a
parameter for a function that is expecting a string.  It is defined in
parm_string.hpp.  It will allow either a const char * or
String class to be passed in.  It will automatically convert to
a const char *.  The string can also be accessed via the
str method.  Usage example:
void foo(ParmString s1, ParmString s2) {
   const char * str0 = s1;
   unsigned int size0 = s2.size()
   if (s1 == s2 || s2 == "bar") {
     ...
   }
}
...
String s1 = "...";
foo(s1);
const char * s2 = "...";
foo(s2);
This class should be used when a string is being passed in as a
parameter.  It is faster than using const String & (as that
will create an unnecessary temporary when a const char * is
passed in), and is less annoying than using const char * (as it
doesn’t require the c_str() method to be used when a
String is passed in).
A character vector is basically a Vector<char> but it has a few
additional methods for dealing with strings which Vector does
not provide.  It, like String, is also inherits OStream
so that you can write to it with the << operator.  It is
defined in char_vector.hpp.  Use it when ever you need a string
which is guaranteed to be in a continuous block of memory which you
can write to.
Next: Smart Pointers, Previous: Source Code Layout, Up: Top [Contents]