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