ORIGINAL
|
Base class that defines a cloneable interface. More...
#include <cloneable.h>
Public Member Functions | |
virtual DERIVED * | clone () const |
Creates a clone of the current object. | |
virtual | ~baseCloneable ()=default |
Virtual destructor for baseCloneable. | |
Protected Member Functions | |
baseCloneable ()=default | |
Default constructor for baseCloneable. | |
Base class that defines a cloneable interface.
DERIVED | The type of the derived class. |
This class provides the mechanism to clone derived objects by calling clone()
in derived classes. It is designed for situations where the cloning behavior does not need to be customized. Derived classes can simply use the default implementation of clone()
provided by this class.
|
protecteddefault |
Default constructor for baseCloneable.
The constructor is protected to prevent direct instantiation of baseCloneable.
|
virtualdefault |
Virtual destructor for baseCloneable.
Ensures proper destruction of derived objects.
|
nodiscardvirtual |
Creates a clone of the current object.
This function uses dynamic casting to create a new instance of the derived class. This default implementation is sufficient when derived classes do not need to customize their cloning behavior.
Reimplemented in original::absTransform< TYPE >, original::addOptTransform< TYPE >, original::array< TYPE, ALLOC >::Iterator, original::assignOptTransform< TYPE >, original::baseIterator< TYPE >, original::baseIterator< bool >, original::bitSet< ALLOC >::Iterator, original::blocksList< TYPE, ALLOC >::Iterator, original::chain< TYPE, ALLOC >::Iterator, original::copyTransform< TYPE, ALLOC >, original::doubleDirectionIterator< TYPE >, original::equalFilter< TYPE >, original::filter< TYPE >, original::forwardChain< TYPE, ALLOC >::Iterator, original::greaterFilter< TYPE >, original::iterable< TYPE >::iterAdaptor, original::iterator< TYPE >, original::iterator< bool >, original::lessFilter< TYPE >, original::multiOptTransform< TYPE >, original::notEqualFilter< TYPE >, original::notGreaterFilter< TYPE >, original::notLessFilter< TYPE >, original::randomAccessIterator< TYPE, ALLOC >, original::rangeFilter< TYPE >, original::singleDirectionIterator< TYPE >, original::stepIterator< TYPE >, original::transform< TYPE >, and original::vector< TYPE, ALLOC >::Iterator.