string 赋值函数 移动赋值函数 移动构造函数
时间: 2023-10-02 09:03:50 浏览: 318
string类,构造函数...
string 赋值函数用于将一个字符串的值赋给另一个字符串。它的原型是:
```
string& operator=(const string& str);
```
其中,`str` 是要赋值的字符串。这个函数将会复制 `str` 的值到当前字符串对象。
移动赋值函数(Move Assignment Operator)用于将一个字符串的资源(如动态内存)移动给另一个字符串,而不是进行复制。它的原型是:
```
string& operator=(string&& str);
```
其中,`str` 是要移动的字符串。这个函数将会将 `str` 的资源转移给当前字符串对象,并使 `str` 成为空字符串。
移动构造函数(Move Constructor)用于通过移动而不是复制来创建一个新的字符串对象。它的原型是:
```
string(string&& str);
```
其中,`str` 是要移动的字符串。这个函数将会创建一个新的字符串对象,并将 `str` 的资源转移给新对象,同时使 `str` 成为空字符串。
这些函数在 C++ 中的 string 类中是内置的,你可以直接使用它们来进行赋值、移动赋值和移动构造操作。
阅读全文