14-4 赋值运算符

在13.1节中已经介绍过赋值运算符的编写,再次不再赘述,主要强调三个原则

  1. 参数:const引用
  2. 返回值:左侧对象引用
  3. 步骤:拷贝参数对象,释放左对象,更新左对象。【处理自赋值】

用初始化列表initializer_list来赋值

image-20220302081303757

和拷贝赋值及移动赋值运算符一样,其他重载的赋值运算符也必须先释放当前内存空间,再创建一片新空间。不同之处是,这个运算符无须检查对象向自身的赋值,这是因为它的形参initializer _list<string>(参见6.2.6节,第198页)确保il与this所指的不是同一个对象

我们可以重载赋值运算符。不论形参的类型是什么,赋值运算符都必须定义为成员函数。

复合赋值运算符

image-20220302081454637

赋值运算符必须定义成类的成员,复合赋值运算符通常情况下也应该这样做这两类运算符都应该返回左侧运算对象的引用

posted @   咪啪魔女  阅读(29)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· Windows编程----内核对象竟然如此简单?
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
more_horiz
keyboard_arrow_up light_mode palette
选择主题
点击右上角即可分享
微信分享提示