string容器
string基本概念
本質:
string是C++風格的字串,而string本質上是個類
string和char*區別:
char是個指標
string是一個類,類內部封裝了char,管理這個字串,是一個char*型的容器
特點
string類內部封裝了很多成員方法
例如:查詢find,複製copy,刪除delete 替換replace,插入insert
string管理char*所分配的記憶體,不用擔心賦值越界和取值越界等,由類內部進行負責
string建構函式
建構函式原型:
string(); | //建立一個空的字串 | 例如:string str; |
---|---|---|
string(const char* s); | //使用字串s初始化 | |
string(const string& str); | //使用一個string物件初始化另一個string物件 | |
string(int n,cahr c); | //使用n個字元c初始化 |
示例:
#include <iostream>
using namespace std;
#include <string>
#include <vector>
#include <algorithm> //標準演算法的標頭檔案
//string的建構函式
//string(); //建立一個空的字串 例如:string str
//string(const char* s); //使用字串s初始化
//string(const string& str); //使用一個string物件初始化另一個string物件
//string(int n,char c); //使用n個字元c初始化
void test01()
{
string s1; //預設構造
const char* str="hello world";
string s2(str);
cout<<"s2="<<s2<<endl;
string s3(s2);
cout<<"s3="<<s3<<endl;
string s4(10,'a');
cout<<"s4="<<s4<<endl;
}
int main()
{
test01();
return 0;
}
總結:
string的多種構造方式沒有可比性,靈活使用即可