cplusplus.hpp 314 B

123456789101112131415161718
  1. #pragma once
  2. #ifdef __cplusplus
  3. #include <type_traits>
  4. namespace types {
  5. class non_copyable {
  6. public:
  7. virtual ~non_copyable() = default;
  8. non_copyable() = default;
  9. non_copyable(const non_copyable&) = delete;
  10. non_copyable& operator=(const non_copyable&) = delete;
  11. };
  12. } // namespace types
  13. #endif