解析c++中的默认operator=操作的详解

作者:kgmucom   在线用户:63
风之恋奇迹私服技术网是一家提供最新互联网编程技术网站

  今天爱站技术频道小编为大家解析c++中的默认operator=操作的详解,我们在开发项目的时候都会使用到operator=操作,那么什么时候该使用它呢?带着这些疑问,一起来学习吧!

  对于一个类,编译器会提供非无用的operator=操作的情形:

  1该类是含有虚成员函数(继承自虚基类,或者继承的基类含有虚成员函数也属于这种情况)

  2该类继承的基类自定义了operator=操作(如果基类没有自定义operator=操作,但是编译器会为基类提供非无用的默认operator=操作,也属于这种情况。这就是说,只要基类有一个非无用的operator=操作就行,不管这个非无用operator=操作是自定义的,还是编译器提供的都行)

  3该类含有成员对象,该成员对象自定义了operator=操作(如果成员对象没有自定义operator=操作,但是编译器会为成员对象变量提供非无用的默认operator=操作,也属于这种情况。这就是说,只要成员对象变量有一个非无用的operator=操作,不管这个非无用的operator=操作是自定义的,还是编译器提供的,都行)

  并且,如果类自定义了operator=操作,编译器只是负责调用,不会额外提供任何拷贝过程;对于编译器提供的默认operator=操作,不管是无用的还是非无用的,都只执行浅拷贝。

  以上就是解析c++中的默认operator=操作的详解,读完上面的内容后,相信你在操作的时候更加有信心,如果你觉得我们的网站内容符合你的需要,请收藏爱站技术频道吧!

提供最全面的奇迹sf开服版本和最新的奇迹私服开服技术信息,奇迹私服文库让每一位奇迹私服玩家找到自己需要的版本技术文章

上一篇:详解C语言中#define与typedef的互换细节

下一篇:探讨C语言的那些小秘密

请发表您的评论