Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

# ACE_Copy_Disabled Class Reference

Helper class to disable copy construction and assignment. More...

`#include <Copy_Disabled.h>`

List of all members.

## Public Member Functions
| ACE_Copy_Disabled (void)
| Default constructor.
## Private Member Functions
| ACE_Copy_Disabled (const ACE_Copy_Disabled &)
ACE_Copy_Disabled & | operator= (const ACE_Copy_Disabled &)

## Detailed Description

Helper class to disable copy construction and assignment.

Classes used to control OS and other resources are not "canonical", i.e. they have their copy constructor and assignment operators disabled. This is often done by making the copy constructor and assignment operators private, effectively disallowing copying by clients of the class (including derived classes). If the copy constructor and assingment operators are left unimplemented then the class itself cannot make any copies of its instances, because it would result in link errors.

To use this class simply use private inheritance:

class Foo : private ACE_Copy_Disabled { // code here };

## Constructor & Destructor Documentation

ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_Copy_Disabled::ACE_Copy_Disabled | ( | void |  | ) |

| Default constructor.

ACE_Copy_Disabled::ACE_Copy_Disabled | ( | const ACE_Copy_Disabled & |  | ) | `[private]`

## Member Function Documentation

ACE_Copy_Disabled& ACE_Copy_Disabled::operator= | ( | const ACE_Copy_Disabled & |  | ) | `[private]`

The documentation for this class was generated from the following files:

- Copy_Disabled.h
- Copy_Disabled.cpp