Arcane  v3.16.0.0
Documentation utilisateur
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>

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.

Références m_value, et PtrT().

Référencé par operator=(), operator=(), PtrT(), et PtrT().

◆ 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.

Références m_value, et PtrT().

◆ 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.

Références m_value.

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 m_value.

Référencé par Arcane::ManualHdf5VariableWriter::notifyEndWrite(), Arcane::operator!=(), et Arcane::operator==().

◆ 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 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 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 m_value, et PtrT().

Référencé par Arcane::ScopedPtrT< T >::operator=().

◆ 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 m_value, et PtrT().

Documentation des données membres

◆ m_value

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

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