我最近和一位朋友讨论过,他们说在C++中创建对象时,使用初始化列表(而不是简单地分配数据成员)可以提高性能。
为什么会这样(如果这是真的)?
我找到了这个页面:
http://www.parashift.com/c++-faq/init-lists.html
他们提到了临时对象,但我认为最新的编译器可以避免这种情况?
发布于 2012-12-16 01:42:24
使用赋值时,对象是在您到达赋值之前默认构造的。如果构造和复制对象是开销很大的操作,那么至少应该去掉其中的一个。初始化列表消除了额外的复制操作。复制构造允许同时执行这两项操作。
https://stackoverflow.com/questions/13894415
复制相似问题