使用assign()函数给std::string类型数据赋值
时间: 2024-02-06 13:03:42 浏览: 93
C++ STL std::string详细讲解
5星 · 资源好评率100%
使用assign()函数可以给std::string类型数据赋值,其函数原型如下:
```
void assign(const char* s);
void assign(const char* s, size_t n);
void assign(const std::string& str);
void assign(const std::string& str, size_t pos, size_t n = std::string::npos);
void assign(size_t n, char c);
template <class InputIterator>
void assign(InputIterator first, InputIterator last);
```
其中,对于C风格字符串的赋值,可以使用第一种和第二种形式。比如:
```
std::string str;
str.assign("hello world");
```
对于已有的std::string类型数据的赋值,可以使用第三种和第四种形式。比如:
```
std::string str1 = "hello";
std::string str2 = "world";
str1.assign(str2);
```
对于重复字符的赋值,可以使用第五种形式。比如:
```
std::string str;
str.assign(5, 'a');
```
对于迭代器范围内的赋值,可以使用第六种形式。比如:
```
std::string str;
std::vector<char> vec = {'h', 'e', 'l', 'l', 'o'};
str.assign(vec.begin(), vec.end());
```
阅读全文