Switch to copy-and-swap idiom for operator=.

This allows the compiler to elide a copy when rhs is a temporary.
This commit is contained in:
Billy Donahue
2014-09-08 08:00:39 -04:00
committed by Christopher Dunn
parent 236db83742
commit 45cd9490cd
4 changed files with 12 additions and 16 deletions

View File

@@ -196,10 +196,9 @@ ValueInternalMap::ValueInternalMap( const ValueInternalMap &other )
ValueInternalMap &
ValueInternalMap::operator =( const ValueInternalMap &other )
ValueInternalMap::operator=(ValueInternalMap other)
{
ValueInternalMap dummy( other );
swap( dummy );
swap(other);
return *this;
}