flag move constructor and swap operator as noexcept for performance
This commit is contained in:
@ -113,8 +113,8 @@ class Superpose3D {
|
|||||||
|
|
||||||
// C++ boilerplate: copy and move constructor, swap, and assignment operator
|
// C++ boilerplate: copy and move constructor, swap, and assignment operator
|
||||||
Superpose3D(const Superpose3D<Scalar, ConstArrayOfCoords, ConstArray> &source);
|
Superpose3D(const Superpose3D<Scalar, ConstArrayOfCoords, ConstArray> &source);
|
||||||
Superpose3D(Superpose3D<Scalar, ConstArrayOfCoords, ConstArray> &&other);
|
Superpose3D(Superpose3D<Scalar, ConstArrayOfCoords, ConstArray> &&other) noexcept;
|
||||||
void swap(Superpose3D<Scalar, ConstArrayOfCoords, ConstArray> &other);
|
void swap(Superpose3D<Scalar, ConstArrayOfCoords, ConstArray> &other) noexcept;
|
||||||
Superpose3D<Scalar, ConstArrayOfCoords, ConstArray> &
|
Superpose3D<Scalar, ConstArrayOfCoords, ConstArray> &
|
||||||
operator=(Superpose3D<Scalar, ConstArrayOfCoords, ConstArray> source);
|
operator=(Superpose3D<Scalar, ConstArrayOfCoords, ConstArray> source);
|
||||||
|
|
||||||
@ -409,7 +409,7 @@ Superpose3D<Scalar, ConstArrayOfCoords, ConstArray>::Superpose3D(
|
|||||||
|
|
||||||
template <typename Scalar, typename ConstArrayOfCoords, typename ConstArray>
|
template <typename Scalar, typename ConstArrayOfCoords, typename ConstArray>
|
||||||
void Superpose3D<Scalar, ConstArrayOfCoords, ConstArray>::swap(
|
void Superpose3D<Scalar, ConstArrayOfCoords, ConstArray>::swap(
|
||||||
Superpose3D<Scalar, ConstArrayOfCoords, ConstArray> &other)
|
Superpose3D<Scalar, ConstArrayOfCoords, ConstArray> &other) noexcept
|
||||||
{
|
{
|
||||||
std::swap(N, other.N);
|
std::swap(N, other.N);
|
||||||
std::swap(R, other.R);
|
std::swap(R, other.R);
|
||||||
@ -420,7 +420,7 @@ void Superpose3D<Scalar, ConstArrayOfCoords, ConstArray>::swap(
|
|||||||
// Move constructor (C++11)
|
// Move constructor (C++11)
|
||||||
template <typename Scalar, typename ConstArrayOfCoords, typename ConstArray>
|
template <typename Scalar, typename ConstArrayOfCoords, typename ConstArray>
|
||||||
Superpose3D<Scalar, ConstArrayOfCoords, ConstArray>::Superpose3D(
|
Superpose3D<Scalar, ConstArrayOfCoords, ConstArray>::Superpose3D(
|
||||||
Superpose3D<Scalar, ConstArrayOfCoords, ConstArray> &&other)
|
Superpose3D<Scalar, ConstArrayOfCoords, ConstArray> &&other) noexcept
|
||||||
{
|
{
|
||||||
Init();
|
Init();
|
||||||
swap(*this, other);
|
swap(*this, other);
|
||||||
|
|||||||
Reference in New Issue
Block a user