c++vector和string

cout << "vector kuo zhan" << endl;

 

shrink_to_fit:将capacity减少为与size大小相同

capacity:不重新分配内存,容器最多可以保存多少个元素

reserve(n):分配至少能容纳n个元素的内存空间

 

vector vec;

cout << "size = " << vec.size() << "  vec.capacity = " << vec.capacity() << endl;

vec.push_back(90);

vec.push_back(90);

vec.push_back(90);

 

vec.reserve(2);

cout << "size = " << vec.size() << "  vec.capacity = " << vec.capacity() << endl;

vec.reserve(60);

cout << "size = " << vec.size() << "  vec.capacity = " << vec.capacity() << endl;

vec.shrink_to_fit();

cout << "size = " << vec.size() << "  vec.capacity = " << vec.capacity() << endl;

 

reserve:不改变容器中元素的数量,仅影响容器预先分配多大的内存空间

 

 

 

 

cout << "string cao zuo" << endl;

string str1("abcdef ghijk");

 

string s1 = str1.substr(6);

cout << s1 << endl;

string s2 = str1.substr(1,7);//第一个参数为开始位置,第二个参数为元素个数

cout << s2 << endl;

 

 

string str2("aaaaaaaa");

str2.insert(3,4,'b');//在下标为3的位置前插入,4个元素

cout << str2 << endl;

 

string s3("ccc ddd eee");

str2.insert(0, s3);//在字符串0下标前插入s3

cout << str2 << endl;

 

str2.assign(s3,2,7);//将str2中的字符替换为s3中下标从2开始的7个字符,没数量则是2以后

cout << str2 << endl;

 

str2.erase(2,4);//在第三个位置开始删除4个元素,如果没有元素个数则删除到最后

cout << str2 << endl;

 

string str3("eeeeeeeeeeee");

str3.append("abcdefgh",3);//将参数追加到str3后边,可添加追加的元素数量,没有则追加全部

cout << str3 << endl;

 

string str4("abcdefghijk");

str4.replace(5,4,"ppp");//将字符串下标为5开始4个字符替换成ppp

cout << str4 << endl;

 

string str5("wfrghjdkt");

cout << str5.find('g') << endl;//查找g第一次出现的位置

cout << str5.rfind("jd") << endl;;//查找元素最后一次出现的位置,如果为字符串的话,就是字符串匹配。

cout << str5.find_first_of("jzzrhf") << endl;//查找任何一个字符第一次出现的位置。为1,即使f的位置

cout << str5.find_last_of("jzzrhf") << endl;//查找任何一个字符最后一次出现的位置

cout << str5.find_first_not_of("jzzrhf") << endl;//查找第一个不在参数字符串中的字符

cout << str5.find_last_not_of("jzzrhf") << endl;//查找最后一个不在参数字符串中的字符

 

string str6("123456");

cout << str6.compare(str2) << endl;//字符串比较,可传递参数下标、个数,比较字符串的下标、个数

 

int num(3456);

string str7 = to_string(num);

double db = stod(str7);

cout << "str7 = " << str7 << endl;

cout << "db = " << db << endl;

你可能感兴趣的:(c++,c++,vector,string)