C++ supports characters strings two ways. The first is as
a null-terminated character array. This is sometimes
referred to as a C string. The second way is as a class
object of type basic_string. The basic_string class is
essentially a container. this means that iterators and the
STL algorithms can operate on string. However,
has additional capabilities.
C++ string recognizes operators:
When you use template functions, or classes you don't need
to write addition function with strcpy, ctrcmp of ctrcat...
In this case C++ string works like any of built-in data type.
C++ string, like any of container classes,
has its own public functions, that add a lot of flexibility
for manipulation of C++ string data type.
You don't need to think about overflowing or null-terminating
character. C++ string allows use sequence of characters as long
as allows ability of your OS.