If a string is defined like this
std::string name;
What will be the value of the uninitialized string "name" and what size it would be?
Because it is not initialized, it is the default constructor that is called. Then :
empty string constructor (default constructor) :
Constructs an empty string, with a length of zero characters.
Take a look : http://www.cplusplus.com/reference/string/string/string/
EDIT : As stated in C++11, §21.4.2/1 :
Effects: Constructs an object of class basic_string. The postconditions of this function are indicated in Table 63.
-> Table 63
+-----------------------------------------------------------------------------+
| data() | a non-null pointer that is copyable and can have 0 added to it |
+------------+----------------------------------------------------------------+
| size() | 0 |
+------------+----------------------------------------------------------------+
| capacity() | an unspecified value |
+-----------------------------------------------------------------------------+