forked from boostorg/core
		
	
		
			
				
	
	
		
			37 lines
		
	
	
		
			980 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			980 B
		
	
	
	
		
			C++
		
	
	
	
	
	
//  boost class noncopyable test program  ------------------------------------//
 | 
						|
 | 
						|
//  (C) Copyright Beman Dawes 1999. 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 for most recent version including documentation.
 | 
						|
 | 
						|
//  Revision History
 | 
						|
//   9 Jun 99  Add unnamed namespace
 | 
						|
//   2 Jun 99  Initial Version
 | 
						|
 | 
						|
#include <boost/noncopyable.hpp>
 | 
						|
#include <iostream>
 | 
						|
 | 
						|
//  This program demonstrates compiler errors resulting from trying to copy
 | 
						|
//  construct or copy assign a class object derived from class noncopyable.
 | 
						|
 | 
						|
namespace
 | 
						|
{
 | 
						|
    class DontTreadOnMe : private boost::noncopyable
 | 
						|
    {
 | 
						|
    public:
 | 
						|
         DontTreadOnMe() { std::cout << "defanged!" << std::endl; }
 | 
						|
    };   // DontTreadOnMe
 | 
						|
 | 
						|
}   // unnamed namespace
 | 
						|
 | 
						|
int main()
 | 
						|
{
 | 
						|
    DontTreadOnMe object1;
 | 
						|
    DontTreadOnMe object2(object1);
 | 
						|
    object1 = object2;
 | 
						|
    return 0;
 | 
						|
}   // main
 | 
						|
 |