8.5 对象复制问题

2013-10-07 16:07:33 · 作者: · 浏览: 54

8.5  对象复制问题

按值传递实参到函数时复制是隐式进行的。当实参是基本类型时,这样没有问题。但是,如果实参是类类型的对象时,这就可能有问题了。对象复制操作所产生的系统开销会很大,尤其是当对象很大或占用的内存是动态分配时。对象复制是通过调用类的复制构造函数完成的,因此,此类函数的效率对于执行性能来说至关重要。在讨论CMessage类时我们已看到过,赋值运算符也涉及对象的复制。但是,有些情况下,这样的复制操作实际上是没有必要的,如果能够找到合适的办法避免这样的复制操作,则执行时间可能会大大缩短。rvalue引用实参是解决这一问题的关键。