string 快速使用,難點解決
//構造函數使用 列表
/*
string(char* pStr);
string(char* pStr,size_t length);
string(string s, begin_pos, length);
string(char* pbegin_pos, char* pend_pos);
string( length,char c);
string();
string(string s);
*/
//例子:
char szName[10]={'1','2','/0','3','4','5','/0'};
//1.string(const char *s);//用c字符串s初始化,就是以'/0'結尾的字符串
std::string sName1(szName);
std::cout << sName1 <<"|" << sName1.length() << std::endl;//sName1輸出結果:[12|2]
//2.string(int n,char c); //用n個字符c初始化
std::string sName2(3, '/0');//如果爲'/0'也可,不過輸出就是3個空字符
//說明String 不同於一般的c 以‘/0'結尾的串,而是實在的串,一定要分清
std::cout << sName2 << "|" << sName2.length() << std::endl;//輸出:[222|3]
//3.string() 是可以產生一個空串,不管是否是臨時對象
std::string sName3;
std::cout << sName3 << "|" << sName3.length() << std::endl;//輸出:[|0]
//4.string(char*p, length)//從 p中拷貝 4個字符到sName4
std::string sName4(szName, 4);
std::cout << sName4 << "|" << sName4.length() << std::endl;//輸出:[12 3|4]
//5.string(string s,begin_pos,length) sName5//從s 中下標begin_pos位置開始,拷貝length個到sName5串
std::string sName5(sName4, 1,3);
std::cout << sName5 << "|" << sName5.length() << std::endl;//輸出:[2 3|3]
//6.string(sName); 等等
//7.string(char*pBegin, char*pEnd);//拷貝從pBegin開始到pEnd 前一個結束
std::string sName6(szName+1, szName+5);
std::cout << sName6 << "|" << sName6.length() << std::endl; //輸出:[2 34|4]
// = 重載函數
//string s="abc";//string& operator=(char* pstr)
std::string s2 ; s2 ='c';
std::cout << s2 << "|" << s2.length() << std::endl;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.