Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence du modèle de la classe Arcane::PtrT< T >

Encapsulation d'un pointeur. Plus de détails...

#include <arcane/utils/Ptr.h>

+ Graphe d'héritage de Arcane::PtrT< T >:
+ Graphe de collaboration de Arcane::PtrT< T >:

Fonctions membres publiques

 PtrT ()=default
 Construit une instance sans référence.
 
 PtrT (T *t)
 Construit une instance référant t.
 
T * operator-> () const
 Retourne l'objet référé par l'instance.
 
T & operator* () const
 Retourne l'objet référé par l'instance.
 
T * get () const
 Retourne l'objet référé par l'instance.
 
bool isNull () const
 

Fonctions membres protégées

PtrT< T > & operator= (const PtrT< T > &from)
 Opérateur de copie.
 
template<typename T2 >
PtrT< T > & operator= (const PtrT< T2 > &from)
 
PtrT< T > & operator= (T *new_value)
 Affecte à l'instance la value new_value.
 
 PtrT (const PtrT< T > &from)
 Construit une référence référant from.
 
template<typename T2 >
 PtrT (const PtrT< T2 > &from)
 Construit une référence référant from.
 

Attributs protégés

T * m_value = nullptr
 Pointeur sur l'objet référencé
 

Description détaillée

template<class T>
class Arcane::PtrT< T >

Encapsulation d'un pointeur.

Cette classe ne fait rien de particulier si ce n'est encapsulé un pointeur d'un type quelconque. Elle sert de classe de base à d'autres classes qui fournissent des fonctionnalités plus évoluées comme AutoRefT.

Afin d'éviter des copies malencontreuses, le constructeur de copie et les opérateurs de copie sont protégés.

En mode débug, vérifie qu'on accède pas à un pointeur nul.

Le paramètre template n'a pas besoin d'être défini. Cette classe peut donc être instanciée pour un type opaque.

Définition à la ligne 44 du fichier Ptr.h.

Documentation des constructeurs et destructeur

◆ PtrT() [1/3]

template<class T >
Arcane::PtrT< T >::PtrT ( const PtrT< T > &  from)
inlineprotected

Construit une référence référant from.

Définition à la ligne 70 du fichier Ptr.h.

◆ PtrT() [2/3]

template<class T >
template<typename T2 >
Arcane::PtrT< T >::PtrT ( const PtrT< T2 > &  from)
inlineprotected

Construit une référence référant from.

Définition à la ligne 76 du fichier Ptr.h.

◆ PtrT() [3/3]

template<class T >
Arcane::PtrT< T >::PtrT ( T *  t)
inlineexplicit

Construit une instance référant t.

Définition à la ligne 86 du fichier Ptr.h.

Documentation des fonctions membres

◆ get()

template<class T >
T * Arcane::PtrT< T >::get ( ) const
inline

Retourne l'objet référé par l'instance.

Avertissement
En général, il faut être prudent lorsqu'on utilise cette fonction et ne pas conservé le pointeur retourné.

Définition à la ligne 121 du fichier Ptr.h.

Références Arcane::PtrT< T >::m_value.

◆ isNull()

template<class T >
bool Arcane::PtrT< T >::isNull ( ) const
inline

Définition à la ligne 123 du fichier Ptr.h.

◆ operator*()

template<class T >
T & Arcane::PtrT< T >::operator* ( ) const
inline

Retourne l'objet référé par l'instance.

Définition à la ligne 106 du fichier Ptr.h.

Références Arcane::arcaneNullPointerError(), et Arcane::PtrT< T >::m_value.

◆ operator->()

template<class T >
T * Arcane::PtrT< T >::operator-> ( ) const
inline

Retourne l'objet référé par l'instance.

Définition à la ligne 96 du fichier Ptr.h.

Références Arcane::arcaneNullPointerError(), et Arcane::PtrT< T >::m_value.

◆ operator=() [1/3]

template<class T >
PtrT< T > & Arcane::PtrT< T >::operator= ( const PtrT< T > &  from)
inlineprotected

Opérateur de copie.

Définition à la ligne 49 du fichier Ptr.h.

Références Arcane::PtrT< T >::m_value.

◆ operator=() [2/3]

template<class T >
template<typename T2 >
PtrT< T > & Arcane::PtrT< T >::operator= ( const PtrT< T2 > &  from)
inlineprotected

Définition à la ligne 56 du fichier Ptr.h.

◆ operator=() [3/3]

template<class T >
PtrT< T > & Arcane::PtrT< T >::operator= ( T *  new_value)
inlineprotected

Affecte à l'instance la value new_value.

Définition à la ligne 63 du fichier Ptr.h.

Références Arcane::PtrT< T >::m_value.

Documentation des données membres

◆ m_value

template<class T >
T* Arcane::PtrT< T >::m_value = nullptr
protected

Pointeur sur l'objet référencé

Définition à la ligne 127 du fichier Ptr.h.

Référencé par Arcane::PtrT< T >::get(), Arcane::PtrT< T >::operator*(), Arcane::PtrT< T >::operator->(), Arcane::PtrT< T >::operator=(), et Arcane::PtrT< T >::operator=().


La documentation de cette classe a été générée à partir du fichier suivant :