阅读量:0
在C++中,string类的assign函数用于将一个字符串赋值给另一个字符串。其语法如下:
string& assign (const string& str); string& assign (const string& str, size_t subpos, size_t sublen); string& assign (const char* s); string& assign (const char* s, size_t n); string& assign (size_t n, char c);
其中,参数含义如下:
- 第一个重载函数将字符串str赋值给当前字符串。
- 第二个重载函数将字符串str的一部分(从位置subpos开始,长度为sublen)赋值给当前字符串。
- 第三个重载函数将C风格字符串s赋值给当前字符串。
- 第四个重载函数将C风格字符串s的前n个字符赋值给当前字符串。
- 第五个重载函数将字符c重复n次赋值给当前字符串。
示例:
std::string str1 = "Hello"; std::string str2; str2.assign(str1); // 将str1赋值给str2 std::cout << str2 << std::endl; // 输出:Hello str2.assign(str1, 2, 3); // 将str1的子串“llo”赋值给str2 std::cout << str2 << std::endl; // 输出:llo str2.assign("World"); // 将C风格字符串"World"赋值给str2 std::cout << str2 << std::endl; // 输出:World str2.assign("Goodbye", 4); // 将C风格字符串"Good"的前4个字符赋值给str2 std::cout << str2 << std::endl; // 输出:Good str2.assign(3, 'A'); // 将字符'A'重复3次赋值给str2 std::cout << str2 << std::endl; // 输出:AAA