mirror of https://github.com/CGAL/cgal
35 lines
891 B
TeX
35 lines
891 B
TeX
%% $RCSfile$
|
|
% $Revision$
|
|
% $Date$
|
|
|
|
|
|
%\chapter{Handles} \label{I1_ChapterPointer}
|
|
\section{Handles}
|
|
|
|
|
|
|
|
%\section{Definition}
|
|
Most of the data structures and classes of the \cgal\ library
|
|
uses the concept of \ccc{Handle} in their user interface.
|
|
The concept \ccc{Handle} describes what is often called
|
|
a trivial iterator.
|
|
A \ccc{Handle} is
|
|
mainly a pointer to an object providing
|
|
dereference operator \ccc{operator*()} and
|
|
member access \ccc{operator->()} but no increment or decrement
|
|
operators.
|
|
A \ccc{Handle} should be used whenever the referenced
|
|
object
|
|
is not part of a logical sequence.
|
|
|
|
\paragraph{Model for a handle}
|
|
The class \ccc{CGAL::Pointer<T>}
|
|
provides a model for a handle
|
|
pointing to an object
|
|
of class \ccc{T}.
|
|
|
|
Note that a simple pointer \ccc{T*},
|
|
an iterator or a circulator with value type \ccc{T},
|
|
can also be used as handles for object of type \ccc{T}.
|
|
|