libcopp  1.1.0
non_copyable.h
Go to the documentation of this file.
1 /*
2  * non_copyable.h
3  *
4  * Created on: 2014年4月2日
5  * Author: owent
6  *
7  * Released under the MIT license
8  */
9 
10 #ifndef COPP_UTILS_NON_COPYABLE_H
11 #define COPP_UTILS_NON_COPYABLE_H
12 
13 #pragma once
14 
16 
17 namespace copp {
18  namespace utils {
20  {
21  protected:
24 
25  private:
26  non_copyable(const non_copyable&) UTIL_CONFIG_DELETED_FUNCTION;
27  non_copyable& operator=(const non_copyable&) UTIL_CONFIG_DELETED_FUNCTION;
28 
29 #if defined(UTIL_CONFIG_COMPILER_CXX_RVALUE_REFERENCES) && UTIL_CONFIG_COMPILER_CXX_RVALUE_REFERENCES
30  non_copyable(const non_copyable&&) UTIL_CONFIG_DELETED_FUNCTION;
31  non_copyable& operator=(const non_copyable&&) UTIL_CONFIG_DELETED_FUNCTION;
32 #endif
33  };
34  }
35 }
36 
37 
38 #endif /* NON_COPYABLE_H_ */
non_copyable & operator=(const non_copyable &) UTIL_CONFIG_DELETED_FUNCTION