1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
#pragma once namespace yage { class NonCopyable { protected: NonCopyable() = default; ~NonCopyable() = default; NonCopyable(const NonCopyable &) = delete; NonCopyable &operator=(const NonCopyable &) = delete; }; } // namespace yage