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.