From 31ef165cbbf918ba0ddd00f86c6dee257a0b936b Mon Sep 17 00:00:00 2001 From: Linus Jahn Date: Fri, 17 Jun 2022 18:26:01 +0200 Subject: Add move constructors and move assignment operators everywhere This is so std::move() on implicitly-shared types actually moves the content and doesn't call the copy ctor/assignment operator. --- src/base/QXmppVCardIq.cpp | 28 +++++++++------------------- 1 file changed, 9 insertions(+), 19 deletions(-) (limited to 'src/base/QXmppVCardIq.cpp') diff --git a/src/base/QXmppVCardIq.cpp b/src/base/QXmppVCardIq.cpp index 423918ba..4abec8ba 100644 --- a/src/base/QXmppVCardIq.cpp +++ b/src/base/QXmppVCardIq.cpp @@ -42,30 +42,20 @@ public: }; /// Constructs an empty address. - QXmppVCardAddress::QXmppVCardAddress() : d(new QXmppVCardAddressPrivate) { } -/// Constructs a copy of \a other. - -QXmppVCardAddress::QXmppVCardAddress(const QXmppVCardAddress &other) - : d(other.d) -{ -} - -QXmppVCardAddress::~QXmppVCardAddress() -{ -} - -/// Assigns \a other to this address. - -QXmppVCardAddress &QXmppVCardAddress::operator=(const QXmppVCardAddress &other) -{ - d = other.d; - return *this; -} +/// Copy-constructor +QXmppVCardAddress::QXmppVCardAddress(const QXmppVCardAddress &other) = default; +/// Move-constructor +QXmppVCardAddress::QXmppVCardAddress(QXmppVCardAddress &&) = default; +QXmppVCardAddress::~QXmppVCardAddress() = default; +/// Assignment operator. +QXmppVCardAddress &QXmppVCardAddress::operator=(const QXmppVCardAddress &other) = default; +/// Move-assignment operator. +QXmppVCardAddress &QXmppVCardAddress::operator=(QXmppVCardAddress &&) = default; /// \brief Checks if two address objects represent the same address. -- cgit v1.2.3