计算机科学

首页 > 计算机科学

赋值运算符

2018-08-31 09:32:08     所属分类:程序架构

在C++编程语言里,赋值运算符(英文:assignment operator)是用等号 = 符号。就像其他的C++运算符一样,它可以作为重载。

复制赋值运算符是一个特别的赋值运算符,通常是用来把已存在的对象指定给其他相同类别的对象。它是一个特别的成员函数,如果程序员没有定义这个成员函数,那么编译器会自动地产生这个成员函数。编译器产生的代码是以单一成员进行对象复制的动作。

复制赋值运算符,这个成员函数与复制构造函数的相异点在于,它一定会清除目标对象的数据成员(以及确实掌控自我设值的动作),而复制构造函数不会初始化类别的数据成员。[1]

以下是源代码的示例:

My_Array first;
// 由默认构造函数做初始化动作
My_Array second(first);
// 由复制构造函数做初始化动作
My_Array third = first;
// 这个也是由复制构造函数做初始化动作
second = third;
// 由复制赋值运算符做设置的动作

相关条目

  • 运算符重载
  • C和C++运算符
  • 三法则

参考资料

  1. ^ 比雅尼, 斯特劳斯特鲁普. The C++ Programming Language 3rd Edition. Addison-Wesley. 2000: 244. ISBN 978-0201700732. 

上一篇:临界区块
下一篇:越位规则
相关推荐