Rumah > Artikel > hujung hadapan web > Ringkasan penggunaan kelas rentetan dalam kemahiran C_javascript
Saya percaya rakan-rakan yang telah menggunakan pengaturcaraan MFC sepatutnya sangat kagum dengan kelas CString, bukan? Memang, kelas CString dalam MFC sangat mudah dan mudah digunakan. Tetapi jika kita meninggalkan rangka kerja MFC, adakah terdapat kelas yang sangat mudah untuk digunakan? Jawapannya ya. Sesetengah orang mungkin mengatakan bahawa walaupun anda tidak menggunakan rangka kerja MFC, anda masih boleh mencari cara untuk menggunakan API dalam MFC Kaedah operasi khusus diberikan pada akhir artikel ini. Malah, ramai orang mungkin mengabaikan penggunaan kelas rentetan dalam standard C. Fungsi kelas rentetan yang disediakan dalam standard C juga sangat berkuasa dan secara amnya boleh digunakan apabila kami membangunkan projek. Sekarang saya akan menyenaraikan beberapa penggunaan khusus seperti berikut, hanya untuk menjadi titik permulaan Okay, berhenti bercakap kosong dan sampai ke intinya!
Untuk menggunakan kelas rentetan dalam standard C, anda mesti memasukkan
#include 98c455a79ddfebb79781bff588e7b37e// Ambil perhatian bahawa ia adalah 98c455a79ddfebb79781bff588e7b37e, bukan bbed3fed50f96ac7490cfc6a498c4bc5 yang mempunyai .h ialah fail pengepala dalam bahasa C
menggunakan std::string;
menggunakan std::wstring;
atau
menggunakan ruang nama std;
Kini anda boleh menggunakan rentetan/wstring, yang sepadan dengan char dan wchar_t masing-masing.
Penggunaan rentetan dan wstring adalah sama, hanya rentetan digunakan untuk pengenalan di bawah:
Pembina kelas rentetan:
string(const char *s); //用c字符串s初始化 string(int n,char c);//用n个字符c初始化
Selain itu, kelas rentetan juga menyokong pembina lalai dan pembina salinan, seperti rentetan s1 rentetan s2="hello" semuanya adalah cara penulisan yang betul. Pengecualian length_error akan dilemparkan apabila rentetan yang dibina terlalu panjang untuk dinyatakan
Kendalian watak kelas rentetan:
const char &operator[](int n)const; const char &at(int n)const; char &operator[](int n); char &at(int n); //operator[]和at()均返回当前字符串中第n个字符的位置,但at函数提供范围检查,当越界时会抛出out_of_range异常,下标运算符[]不提供检查访问。 const char *data()const;//返回一个非null终止的c字符数组 const char* c_str()const;//返回一个以null终止的c字符串 int copy(char *s, int n, int pos = 0)const;//把当前串中以pos开始的n个字符拷贝到以s为起始位置的字符数组中,返回实际拷贝的数目
Perihalan ciri rentetan:
int capacity()const; //返回当前容量(即string中不必增加内存即可存放的元素个数) int max_size()const; //返回string对象中可存放的最大字符串的长度 int size()const; //返回当前字符串的大小 int length()const; //返回当前字符串的长度 bool empty()const; //当前字符串是否为空 void resize(int len,char c);//把字符串当前大小置为len,并用字符c填充不足的部分 string类的输入输出操作: string类重载运算符operator>>用于输入,同样重载运算符operator<<用于输出操作。 函数getline(istream &in,string &s);用于从输入流in中读取字符串到s中,以换行符'\n'分开。
Penugasan rentetan:
sambungan rentetan:
Perbandingan rentetan:
string input("hello,this is a test"); istringstream is(input); string s1,s2,s3,s4; is>>s1>>s2>>s3>>s4;//s1="hello,this",s2="is",s3="a",s4="test" ostringstream os; os<<s1<<s2<<s3<<s4; cout<<os.str();
以上就是对C++ string类的一个简要介绍。用的好的话它所具有的功能不会比MFC中的CString类逊色多少,呵呵,个人意见!