C++ string类操作

1.构造函数

string s1; //s1=""
string s2("Hello"); //s2 = "Hello"
string s3(4, 'K'); //s3 = "KKKK"
string s4("12345",1,3) //s4 = "234", 即从"12345"下标1开始, 长度为3的子串

注意:string类没有接收一个整数或一个字符的构造函数,所以下面两种写法是错的:

string s1('K');
string s2(123);

 

2.对string对象赋值

可以用char* 类型的常量、变量,或char类型的常量、变量对string赋值

string s;
s = 'K';
s = "Hello";

 

3.求字符串的长度

使用length()或size()成员函数。

string s;
s = "Hello";
int length = s.length();
int length = s.size();

 

4.string对象中字符串的连接

除了可以使用 + 和 += 对string对象执行支付穿的连接操作,还可以用apped()成员函数。

string s1("123"), s2("abc");
s1.append(s2); //s1 = "123abc"
s1.append(s2, 1, 2); //s1 = "123abcbc"
s1.append(3, 'K'); //s1 = "123abcbcKKK"
s1.append("ABCDE", 2, 3) //s1 = "123abcKKKCDE"

注意: res = res + s 和 res += s的最终结果是一样的,但是过程不用。前者会创建一个临时对象,占据比较多的内存和时间,而后者不会。

 

posted @ 2020-03-16 14:11  jenningszheng  阅读(271)  评论(0编辑  收藏  举报