Pointeur intelligent boost : return NULL ->comment faire?
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:
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:
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.