Smart pointers

-- OMDG standard \zline{\fbox{Ref}}
  template< class T >
  class Ref { 
  public:
  
  Ref(const T*); 
constructors

Ref(const Ref&); T* operator*() const;
\ifsli{deref}{de-reference operators}

T* operator->() const; operator T*() const;
type conversion
Ref& operator=(const T*);
assignment
Ref& operator=(const Ref< T >&); };

slide: Smart pointers