Carna  Version 3.3.2
noncopyable.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2010 - 2015 Leonid Kostrykin
3  *
4  * Chair of Medical Engineering (mediTEC)
5  * RWTH Aachen University
6  * Pauwelsstr. 20
7  * 52074 Aachen
8  * Germany
9  *
10  */
11 
12 #ifndef NONCOPYABLE_H_6014714286
13 #define NONCOPYABLE_H_6014714286
14 
20 namespace Carna
21 {
22 
23 namespace base
24 {
25 
26 
27 
28 // ----------------------------------------------------------------------------------
29 // noncopyable
30 // ----------------------------------------------------------------------------------
31 
43 {
44 
45 private:
46 
49  noncopyable( const noncopyable& )
50  {
51  }
52 
55  noncopyable& operator=( const noncopyable& )
56  {
57  return *this;
58  }
59 
60 
61 public:
62 
66  {
67  }
68 
69 }; // noncopyable
70 
71 
72 
109 #define NON_COPYABLE private: ::Carna::base::noncopyable __noncopyable;
110 
111 
112 
113 } // namespace Carna :: base
114 
115 } // namespace Carna
116 
117 #endif // NONCOPYABLE_H_6014714286
noncopyable()
Enabled default constructor.
Definition: noncopyable.h:65
Objects from classes inheriting this cannot be copied.
Definition: noncopyable.h:42