• Skip to content
  • Skip to link menu
KDE 3.5 API Reference
  • KDE API Reference
  • API Reference
  • Sitemap
  • Contact Us
 

KDECore

KSharedPtr< T > Class Template Reference

Can be used to control the lifetime of an object that has derived KShared. More...

#include <ksharedptr.h>

Inheritance diagram for KSharedPtr< T >:

Inheritance graph
[legend]

List of all members.


Public Member Functions

int count () const
const T * data () const
T * data ()
 KSharedPtr (const KSharedPtr &p)
 KSharedPtr (T *t)
 KSharedPtr ()
 operator T * () const
bool operator! () const
bool operator!= (const T *p) const
bool operator!= (const KSharedPtr< T > &p) const
T & operator* ()
const T & operator* () const
T * operator-> ()
const T * operator-> () const
KSharedPtr< T > & operator= (T *p)
KSharedPtr< T > & operator= (const KSharedPtr< T > &p)
bool operator== (const T *p) const
bool operator== (const KSharedPtr< T > &p) const
 ~KSharedPtr ()

Detailed Description

template<class T>
class KSharedPtr< T >

Can be used to control the lifetime of an object that has derived KShared.

As long a someone holds a KSharedPtr on some KShared object it won't become deleted but is deleted once its reference count is 0. This struct emulates C++ pointers virtually perfectly. So just use it like a simple C++ pointer.

KShared and KSharedPtr are preferred over QShared / QSharedPtr since they are more safe.

WARNING: Please note that this class template provides an implicit conversion to T*. Do *not* change this pointer or the pointee (don't call delete on it, for instance) behind KSharedPtr's back.

Author:
Waldo Bastian <bastian@kde.org>

Definition at line 100 of file ksharedptr.h.


Constructor & Destructor Documentation

template<class T>
KSharedPtr< T >::KSharedPtr (  )  [inline]

Creates a null pointer.

Definition at line 106 of file ksharedptr.h.

template<class T>
KSharedPtr< T >::KSharedPtr ( T *  t  )  [inline]

Creates a new pointer.

Parameters:
t the pointer

Definition at line 112 of file ksharedptr.h.

template<class T>
KSharedPtr< T >::KSharedPtr ( const KSharedPtr< T > &  p  )  [inline]

Copies a pointer.

Parameters:
p the pointer to copy

Definition at line 119 of file ksharedptr.h.

template<class T>
KSharedPtr< T >::~KSharedPtr (  )  [inline]

Unreferences the object that this pointer points to.

If it was the last reference, the object will be deleted.

Definition at line 126 of file ksharedptr.h.


Member Function Documentation

template<class T>
int KSharedPtr< T >::count (  )  const [inline]

Returns the number of references.

Returns:
the number of references

Definition at line 170 of file ksharedptr.h.

template<class T>
const T* KSharedPtr< T >::data (  )  const [inline]

Returns the pointer.

Returns:
the pointer

Definition at line 159 of file ksharedptr.h.

template<class T>
T* KSharedPtr< T >::data (  )  [inline]

Returns the pointer.

Returns:
the pointer

Definition at line 153 of file ksharedptr.h.

template<class T>
KSharedPtr< T >::operator T * (  )  const [inline]

Definition at line 147 of file ksharedptr.h.

template<class T>
bool KSharedPtr< T >::operator! (  )  const [inline]

Definition at line 146 of file ksharedptr.h.

template<class T>
bool KSharedPtr< T >::operator!= ( const T *  p  )  const [inline]

Definition at line 145 of file ksharedptr.h.

template<class T>
bool KSharedPtr< T >::operator!= ( const KSharedPtr< T > &  p  )  const [inline]

Definition at line 143 of file ksharedptr.h.

template<class T>
T& KSharedPtr< T >::operator* (  )  [inline]

Definition at line 162 of file ksharedptr.h.

template<class T>
const T& KSharedPtr< T >::operator* (  )  const [inline]

Definition at line 161 of file ksharedptr.h.

template<class T>
T* KSharedPtr< T >::operator-> (  )  [inline]

Definition at line 164 of file ksharedptr.h.

template<class T>
const T* KSharedPtr< T >::operator-> (  )  const [inline]

Definition at line 163 of file ksharedptr.h.

template<class T>
KSharedPtr<T>& KSharedPtr< T >::operator= ( T *  p  )  [inline]

Definition at line 135 of file ksharedptr.h.

template<class T>
KSharedPtr<T>& KSharedPtr< T >::operator= ( const KSharedPtr< T > &  p  )  [inline]

Definition at line 128 of file ksharedptr.h.

template<class T>
bool KSharedPtr< T >::operator== ( const T *  p  )  const [inline]

Definition at line 144 of file ksharedptr.h.

template<class T>
bool KSharedPtr< T >::operator== ( const KSharedPtr< T > &  p  )  const [inline]

Definition at line 142 of file ksharedptr.h.


The documentation for this class was generated from the following file:
  • ksharedptr.h

KDECore

Skip menu "KDECore"
  • Main Page
  • Modules
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

API Reference

Skip menu "API Reference"
  • dcop
  • DNSSD
  • interfaces
  • Kate
  • kconf_update
  • KDECore
  • KDED
  • kdefx
  • KDEsu
  • kdeui
  • KDocTools
  • KHTML
  • KImgIO
  • KInit
  • kio
  • kioslave
  • KJS
  • KNewStuff
  • KParts
  • KUtils
Generated for API Reference by doxygen 1.5.9
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal