]> AND Private Git Repository - canny.git/blob - stc/exp/ml_stc_linux_make_v1.0/include/boost/noncopyable.hpp
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
7deb935fbeeef9da10d09fcfead3d70441986d6e
[canny.git] / stc / exp / ml_stc_linux_make_v1.0 / include / boost / noncopyable.hpp
1 //  Boost noncopyable.hpp header file  --------------------------------------//\r
2 \r
3 //  (C) Copyright Beman Dawes 1999-2003. Distributed under the Boost\r
4 //  Software License, Version 1.0. (See accompanying file\r
5 //  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)\r
6 \r
7 //  See http://www.boost.org/libs/utility for documentation.\r
8 \r
9 #ifndef BOOST_NONCOPYABLE_HPP_INCLUDED\r
10 #define BOOST_NONCOPYABLE_HPP_INCLUDED\r
11 \r
12 namespace boost {\r
13 \r
14 //  Private copy constructor and copy assignment ensure classes derived from\r
15 //  class noncopyable cannot be copied.\r
16 \r
17 //  Contributed by Dave Abrahams\r
18 \r
19 namespace noncopyable_  // protection from unintended ADL\r
20 {\r
21   class noncopyable\r
22   {\r
23    protected:\r
24       noncopyable() {}\r
25       ~noncopyable() {}\r
26    private:  // emphasize the following members are private\r
27       noncopyable( const noncopyable& );\r
28       const noncopyable& operator=( const noncopyable& );\r
29   };\r
30 }\r
31 \r
32 typedef noncopyable_::noncopyable noncopyable;\r
33 \r
34 } // namespace boost\r
35 \r
36 #endif  // BOOST_NONCOPYABLE_HPP_INCLUDED\r