You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and dots ('.'), can be up to 35 characters long. Letters must be lowercase.
36 lines
1014 B
36 lines
1014 B
// Boost noncopyable.hpp header file --------------------------------------// |
|
|
|
// (C) Copyright Beman Dawes 1999-2003. Distributed under the Boost |
|
// Software License, Version 1.0. (See accompanying file |
|
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) |
|
|
|
// See http://www.boost.org/libs/utility for documentation. |
|
|
|
#ifndef BOOST_NONCOPYABLE_HPP_INCLUDED |
|
#define BOOST_NONCOPYABLE_HPP_INCLUDED |
|
|
|
namespace boost { |
|
|
|
// Private copy constructor and copy assignment ensure classes derived from |
|
// class noncopyable cannot be copied. |
|
|
|
// Contributed by Dave Abrahams |
|
|
|
namespace noncopyable_ // protection from unintended ADL |
|
{ |
|
class noncopyable |
|
{ |
|
protected: |
|
noncopyable() {} |
|
~noncopyable() {} |
|
private: // emphasize the following members are private |
|
noncopyable( const noncopyable& ); |
|
const noncopyable& operator=( const noncopyable& ); |
|
}; |
|
} |
|
|
|
typedef noncopyable_::noncopyable noncopyable; |
|
|
|
} // namespace boost |
|
|
|
#endif // BOOST_NONCOPYABLE_HPP_INCLUDED
|
|
|