IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Référence de la classe QExtend::ObjectPtr< T, DeletePolicy > (modèle)

Pointeur intelligent pou rles QObject qui créé un objet et synchronise sa durée de vie. Plus de détails...

#include <objectptr.hpp>

Liste de tous les membres

Classes

struct  interptr
struct  interptr< false, TPTR >
struct  interptr< true, TPTR >
struct  myPtr

Fonctions membres publiques

template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
 ObjectPtr (const P1 &p1, const P2 &p2, const P3 &p3, const P4 &p4, const P5 &p5)
 Constructeur du pointeur intelligent.
template<typename P1 , typename P2 , typename P3 , typename P4 >
 ObjectPtr (const P1 &p1, const P2 &p2, const P3 &p3, const P4 &p4)
 Constructeur du pointeur intelligent.
template<typename P1 , typename P2 , typename P3 >
 ObjectPtr (const P1 &p1, const P2 &p2, const P3 &p3)
 Constructeur du pointeur intelligent.
template<typename P1 , typename P2 >
 ObjectPtr (const P1 &p1, const P2 &p2)
 Constructeur du pointeur intelligent.
template<typename P >
 ObjectPtr (const P &p)
 Constructeur du pointeur intelligent.
 ObjectPtr ()
 Constructeur du pointeur intelligent.
 ~ObjectPtr ()
 Destructeur du pointeur intelligent. Utilise DeletePolicy pour savoir s'il faut détruire l'objet.
bool isNull () const
 test si le pointeut est null.
 operator bool () const
 Conversion vers un booléen. Vrai si l'objet n'as pas été détruit(Parent destruction).
 operator T * ()
 Conversion vers le pointeur de l'objet.
 operator const T * () const
 Conversion vers le pointeur constant de l'objet.
T * operator-> ()
 Operateur d'indirection.
const T * operator-> () const
 Operateur d'indirection.
T & operator* ()
 Operateur d'indirection.
const T & operator* () const
 Operateur d'indirection.

Description détaillée

template<typename T, typename DeletePolicy = SCOPE>
class QExtend::ObjectPtr< T, DeletePolicy >

Pointeur intelligent pou rles QObject qui créé un objet et synchronise sa durée de vie.

ObjectPtr permet la création automatique d'objet. Les fonctionalités proposées sont :

  1. Allocation de l'objet lors de sa création.
  2. Ne peut utiliser le polymorphisme .
  3. Il n'est pas copiable ou reasignable.
  4. Son constructeur peut prendre 0 à 5 paramètres pour les passer au constructeur de la classe.
  5. Si l'objet hérite de QObject, permet de savoir si l'objet est toujours vivant (processu de destruction parent/enfant de Qt).
  6. Lors de sa destruction, détruit l'objetde manière sure (verification que l'objet est bien vivant).
Template Parameters:
T Type du QObject.
DeletePolicy Politique de destruction de l'objet utilisé. Par défaut la politique SCOPE est utilisé.

Définition à la ligne 70 du fichier objectptr.hpp.


Documentation des constructeurs et destructeur

template<typename T, typename DeletePolicy = SCOPE>
template<typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
QExtend::ObjectPtr< T, DeletePolicy >::ObjectPtr ( const P1 &  p1,
const P2 &  p2,
const P3 &  p3,
const P4 &  p4,
const P5 &  p5 
) [inline]

Constructeur du pointeur intelligent.

Créé un objet avec cinq paramètres. Le type des paramètres est définie par le compilateur.

Template Parameters:
P1 Premier type.
P2 Deusième type.
P3 Troisième type.
P4 Quatrième type.
P5 Cinquième type.
Paramètres:
p1 Premier paramètre.
p2 Deusième paramètre.
p3 Troisième paramètre.
p4 Quatrième paramètre.
p5 Cinquième paramètre.

Définition à la ligne 167 du fichier objectptr.hpp.

template<typename T, typename DeletePolicy = SCOPE>
template<typename P1 , typename P2 , typename P3 , typename P4 >
QExtend::ObjectPtr< T, DeletePolicy >::ObjectPtr ( const P1 &  p1,
const P2 &  p2,
const P3 &  p3,
const P4 &  p4 
) [inline]

Constructeur du pointeur intelligent.

Créé un objet avec quatre paramètres. Le type des paramètres est définie par le compilateur.

Template Parameters:
P1 Premier type.
P2 Deusième type.
P3 Troisième type.
P4 Quatrième type.
Paramètres:
p1 Premier paramètre.
p2 Deusième paramètre.
p3 Troisième paramètre.
p4 Quatrième paramètre.

Définition à la ligne 226 du fichier objectptr.hpp.

template<typename T, typename DeletePolicy = SCOPE>
template<typename P1 , typename P2 , typename P3 >
QExtend::ObjectPtr< T, DeletePolicy >::ObjectPtr ( const P1 &  p1,
const P2 &  p2,
const P3 &  p3 
) [inline]

Constructeur du pointeur intelligent.

Créé un objet avec trois paramètres. Le type des paramètres est définie par le compilateur.

Template Parameters:
P1 Premier type.
P2 Deusième type.
P3 Troisième type.
Paramètres:
p1 Premier paramètre.
p2 Deusième paramètre.
p3 Troisième paramètre.

Définition à la ligne 279 du fichier objectptr.hpp.

template<typename T, typename DeletePolicy = SCOPE>
template<typename P1 , typename P2 >
QExtend::ObjectPtr< T, DeletePolicy >::ObjectPtr ( const P1 &  p1,
const P2 &  p2 
) [inline]

Constructeur du pointeur intelligent.

Créé un objet avec deux paramètres. Le type des paramètres est définie par le compilateur.

Template Parameters:
P1 Premier type.
P2 Deusième type.
Paramètres:
p1 Premier paramètre.
p2 Deusième paramètre.

Définition à la ligne 321 du fichier objectptr.hpp.

template<typename T, typename DeletePolicy = SCOPE>
template<typename P >
QExtend::ObjectPtr< T, DeletePolicy >::ObjectPtr ( const P &  p  )  [inline]

Constructeur du pointeur intelligent.

Créé un objet avec un paramètre. Le type du paramètre est définie par le compilateur.

Template Parameters:
P type.
Paramètres:
p paramètre.

Définition à la ligne 356 du fichier objectptr.hpp.

template<typename T, typename DeletePolicy = SCOPE>
QExtend::ObjectPtr< T, DeletePolicy >::ObjectPtr (  )  [inline]

Constructeur du pointeur intelligent.

Créé un objet avec son constructeur par défaut.

Définition à la ligne 379 du fichier objectptr.hpp.

template<typename T, typename DeletePolicy = SCOPE>
QExtend::ObjectPtr< T, DeletePolicy >::~ObjectPtr (  )  [inline]

Destructeur du pointeur intelligent. Utilise DeletePolicy pour savoir s'il faut détruire l'objet.

Détruit l'objet.

Définition à la ligne 403 du fichier objectptr.hpp.


Documentation des fonctions membres

template<typename T, typename DeletePolicy = SCOPE>
bool QExtend::ObjectPtr< T, DeletePolicy >::isNull (  )  const [inline]

test si le pointeut est null.

Renvoie:
Retourne vrai si le pointeur est null

Définition à la ligne 427 du fichier objectptr.hpp.

template<typename T, typename DeletePolicy = SCOPE>
QExtend::ObjectPtr< T, DeletePolicy >::operator bool (  )  const [inline]

Conversion vers un booléen. Vrai si l'objet n'as pas été détruit(Parent destruction).

Définition à la ligne 438 du fichier objectptr.hpp.

template<typename T, typename DeletePolicy = SCOPE>
QExtend::ObjectPtr< T, DeletePolicy >::operator const T * (  )  const [inline]

Conversion vers le pointeur constant de l'objet.

Définition à la ligne 460 du fichier objectptr.hpp.

template<typename T, typename DeletePolicy = SCOPE>
QExtend::ObjectPtr< T, DeletePolicy >::operator T * (  )  [inline]

Conversion vers le pointeur de l'objet.

Définition à la ligne 449 du fichier objectptr.hpp.

template<typename T, typename DeletePolicy = SCOPE>
T& QExtend::ObjectPtr< T, DeletePolicy >::operator* (  )  [inline]

Operateur d'indirection.

Renvoie:
Retourne une référence vers l'objet.

Définition à la ligne 520 du fichier objectptr.hpp.

template<typename T, typename DeletePolicy = SCOPE>
const T& QExtend::ObjectPtr< T, DeletePolicy >::operator* (  )  const [inline]

Operateur d'indirection.

Renvoie:
Retourne une référence constante vers l'objet.

Définition à la ligne 539 du fichier objectptr.hpp.

template<typename T, typename DeletePolicy = SCOPE>
const T* QExtend::ObjectPtr< T, DeletePolicy >::operator-> (  )  const [inline]

Operateur d'indirection.

Renvoie:
Retourne le pointeur constant de l'objet.

Définition à la ligne 500 du fichier objectptr.hpp.

template<typename T, typename DeletePolicy = SCOPE>
T* QExtend::ObjectPtr< T, DeletePolicy >::operator-> (  )  [inline]

Operateur d'indirection.

Renvoie:
Retourne le pointeur de l'objet.

Définition à la ligne 481 du fichier objectptr.hpp.

Responsable bénévole de la rubrique Qt : Thibaut Cuvelier -