BsNonCopyable.h 633 B

12345678910111213141516171819202122232425
  1. //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
  2. //**************** Copyright (c) 2016 Marko Pintera ([email protected]). All rights reserved. **********************//
  3. #pragma once
  4. namespace BansheeEngine
  5. {
  6. /** @addtogroup General
  7. * @{
  8. */
  9. /** Interface that prevents copies be made of any type that implements it. */
  10. class INonCopyable
  11. {
  12. protected:
  13. INonCopyable() = default;
  14. ~INonCopyable() = default;
  15. private:
  16. INonCopyable(const INonCopyable&) = delete;
  17. INonCopyable& operator=(const INonCopyable&) = delete;
  18. };
  19. /** @} */
  20. }