From 9f8dc0630d8ccee1ef72b92b46fa1b78e6d3d410 Mon Sep 17 00:00:00 2001 From: Persson-dev Date: Thu, 18 Jul 2024 20:42:45 +0200 Subject: [PATCH] add NonCopyable class --- include/blitz/common/NonCopyable.h | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 include/blitz/common/NonCopyable.h diff --git a/include/blitz/common/NonCopyable.h b/include/blitz/common/NonCopyable.h new file mode 100644 index 0000000..308a744 --- /dev/null +++ b/include/blitz/common/NonCopyable.h @@ -0,0 +1,25 @@ +#pragma once + +/** + * \file NonCopyable.h + * \brief File containing the blitz::NonCopyable class + */ + +namespace blitz { + +/** + * \class NonCopyable + * \brief Class used to make a class non copyable + * \note Inherit from this class privately to make a class non copyable + */ +class NonCopyable { + public: + NonCopyable(const NonCopyable&) = delete; + NonCopyable& operator=(const NonCopyable&) = delete; + + protected: + NonCopyable() {} + ~NonCopyable() {} +}; + +} // namespace blitz