Parcourir la source

add non copyable class

greatbridf il y a 2 ans
Parent
commit
3bb9a50d6a
1 fichiers modifiés avec 7 ajouts et 0 suppressions
  1. 7 0
      include/types/cplusplus.hpp

+ 7 - 0
include/types/cplusplus.hpp

@@ -175,6 +175,13 @@ concept PointerType = traits::is_pointer<T>::value;
 template <typename A, typename B>
 concept same_as = is_same<A, B>::value;
 
+class non_copyable {
+public:
+    non_copyable() = default;
+    non_copyable(const non_copyable&) = delete;
+    non_copyable& operator=(const non_copyable&) = delete;
+};
+
 } // namespace types
 
 #endif