Bonjour à tous,

Je commmence à utiliser les pointeurs intelligents boost, et j'aimerai savoir comment on fait pour faire un return NULL sur un objet de ce type...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
typedef boost::shared_ptr<POINT> POINTPtr;
 
  POINTPtr get_data()
    {
      if( (!is_empty()) && (current) )
	return(current->pt);
      else
	return NULL;  // Ca ne marche pas !
    }
Est-ce que je suis obligé d'utiliser le .reset() pour mettre à NULL un pointeur intelligent et le renvoyer par la suite? Par exemple, comme ça :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
return current->pt.reset();
En fait, je ne sais pas vraiment comment faire, donc j'aimerai l'avis de quelqu'un qui s'y connait en pointeurs intelligents boost.

Merci d'avance pour votre aide.