string 这类字符串事实上是定义的一个模板类basic_string
使用必须包含头文件 #include <string> 和使用命名空间 using namespace std
string具有以下特点:
1.这个类有一个默认的构造函数来初始化一个字符串为空字符串
string str;
2.它有一个构造函数,接受一个字符串或一个字符参数,用于创建一个字符串对象
string str("hello");
string str('h');
3.构造函数可以使用一个隐式转换构造函数。
string str = "I am student!"; (编译器会去寻找参数刚好是一个 char* 的构造函数来创建一个新的对象,尽量使用第2条中的方式,更直接.)
string(char *str){
}
//假如我们想实现下面方法 string str=5;(编译器会去寻找一个参数刚好是 int 的构造函数来创建一个新的对象) //可以这样写构造函数: string(int a){ }
4.类字符串还具有拷贝构造函数和赋值操作符重载。当一个字符串对象被分配到另一个字符串对象时,后者是前者的副本,并且它们是独立的对象。运算符<<可用于输出字符串对象。
string str = "I am student!";
cout<<str<<endl;
(5)字符串对象的长度是由成员函数length()来获取,长度返回字符串中的字符数。
string str = "I am student!";
cout<<str.length( )<<endl;