Browse Source

add non copyable class

greatbridf 2 years ago
parent
commit
3bb9a50d6a
1 changed files with 7 additions and 0 deletions
  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