فهرست منبع

k_scoped_lock: delete copy and move assignment operators

If we delete the copy and move constructor, we should also be deleting
the copy and move assignment operators (and even if this were intended,
it would be pretty odd to not document why it's done this way).
Lioncash 5 سال پیش
والد
کامیت
c018769016
1فایلهای تغییر یافته به همراه5 افزوده شده و 2 حذف شده
  1. 5 2
      src/core/hle/kernel/k_scoped_lock.h

+ 5 - 2
src/core/hle/kernel/k_scoped_lock.h

@@ -25,14 +25,17 @@ public:
     explicit KScopedLock(T* l) : lock_ptr(l) {
         this->lock_ptr->Lock();
     }
-    explicit KScopedLock(T& l) : KScopedLock(std::addressof(l)) { /* ... */
-    }
+    explicit KScopedLock(T& l) : KScopedLock(std::addressof(l)) {}
+
     ~KScopedLock() {
         this->lock_ptr->Unlock();
     }
 
     KScopedLock(const KScopedLock&) = delete;
+    KScopedLock& operator=(const KScopedLock&) = delete;
+
     KScopedLock(KScopedLock&&) = delete;
+    KScopedLock& operator=(KScopedLock&&) = delete;
 
 private:
     T* lock_ptr;