operator const char * const()
const {return Buffer;} is defined in the String class definition.
An operator for type conversion from a user-defined type to a built-in
type is of the form
operator <type>() {...}.
Thus, this type cast operator is named const char * const.
It converts a String instance to a const char * const. This is a constant pointer to
a constant object.
Here's how to read the const stuff:
const <type> * <identifier> is a pointer to a constant object.
The pointer may be changed to point at some other object, but the object
may not be modified.
<type> * const <identifier> is a constant pointer (always
points to the same object). The pointed-at object may be modified, but
the pointer is constant.
const <type> * const <identifier> is a constant pointer to
a constant object. Neither the pointer nor the object may be modified.