std::shared_ptr::reset
De cppreference.com
< cpp | memory | shared ptr
![]() | This page has been machine-translated from the English version of the wiki using Google Translate. The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
void reset(); | (1) | (depuis C++11) |
template<class Y > void reset( Y* ptr ); | (2) | (depuis C++11) |
template<class Y, class Deleter > void reset( Y* ptr, Deleter d ); | (3) | (depuis C++11) |
template<class Y, class Deleter, class Alloc > void reset( Y* ptr, Deleter d, Alloc alloc ); | (4) | (depuis C++11) |
Remplace l'objet géré avec un objet pointé par
ptr
. En option deleter d
peut être fourni, qui est ensuite utilisée pour détruire le nouvel objet lorsque aucun objet shared_ptr
le posséder. Par défaut, l'expression delete est utilisé comme deleter. delete expression appropriée correspondant au type fourni est toujours sélectionné, c'est la raison pour laquelle la fonction est implémentée comme modèle en utilisant un paramètre distinct Y
.Original:
Replaces the managed object with an object pointed to by
ptr
. Optional deleter d
can be supplied, which is later used to destroy the new object when no shared_ptr
objects own it. By default, delete expression is used as deleter. Proper delete expression corresponding to the supplied type is always selected, this is the reason why the function is implemented as template using a separate parameter Y
.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Si
*this
possède déjà un objet et c'est la dernière shared_ptr
le posséder, l'objet est détruit par la propriété deleter .Original:
If
*this
already owns an object and it is the last shared_ptr
owning it, the object is destroyed through the owned deleter.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Si l'objet pointé par
ptr
appartient déjà, les résultats de la fonction à un comportement indéfini .Original:
If the object pointed to by
ptr
is already owned, the function results in undefined behavior.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
1)
Communiqués de la propriété de l'objet géré, le cas échéant. Après l'appel, *this gère aucun objet .
Original:
Releases the ownership of the managed object, if any. After the call, *this manages no object.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
2-4)
Remplace l'objet géré avec un objet pointé par
ptr
. Y
doit être un type complet et implicitement convertible en T
. En outre:Original:
Replaces the managed object with an object pointed to by
ptr
. Y
must be a complete type and implicitly convertible to T
. Additionally:The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
2)
Utilise l'expression supprimer le deleter. Une expression valide de suppression doit être disponible, à savoir delete ptr doivent être bien formés, ont un comportement bien défini et ne pas jeter des exceptions. Appelle effectivement shared_ptr<T>(ptr).swap(*this); .
Original:
Uses the delete expression as the deleter. A valid delete expression must be available, i.e. delete ptr must be well formed, have well-defined behavior and not throw any exceptions. Effectively calls shared_ptr<T>(ptr).swap(*this);.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
3)
Utilise le
d
spécifié deleter le deleter. Deleter
doivent être remboursables pour le type T
, c'est à dire d(ptr) doivent être bien formés, ont un comportement bien défini et ne pas jeter des exceptions. Deleter
doit être CopyConstructible
. Appelle effectivement shared_ptr<T>(ptr, d).swap(*this); .Original:
Uses the specified deleter
d
as the deleter. Deleter
must be callable for the type T
, i.e. d(ptr) must be well formed, have well-defined behavior and not throw any exceptions. Deleter
must be CopyConstructible
. Effectively calls shared_ptr<T>(ptr, d).swap(*this);.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
4)
Idem (3), mais utilise en outre une copie de
alloc
d'attribution de données à usage interne. Alloc
doit être un Allocator
. Le constructeur de copie et le destructeur ne doit pas lever des exceptions. Appelle effectivement shared_ptr<T>(ptr, d, alloc).swap(*this); .Original:
Same as (3), but additionally uses a copy of
alloc
for allocation of data for internal use. Alloc
must be a Allocator
. The copy constructor and destructor must not throw exceptions. Effectively calls shared_ptr<T>(ptr, d, alloc).swap(*this);.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Sommaire |
[modifier]Paramètres
ptr | - | pointeur vers un objet à acquérir la propriété d' Original: pointer to an object to acquire ownership of The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
d | - | suppresseur de stocker à la suppression de l'objet Original: deleter to store for deletion of the object The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
alloc | - | allocateur à utiliser pour la répartition interne Original: allocator to use for internal allocations The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
[modifier]Retourne la valeur
(Aucun)
Original:
(none)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[modifier]Exceptions
1) 2-4)Comme spécifié par le constructeur concerné
.
This section is incomplete |
Original:
As specified by the relevant constructor
.
This section is incomplete |
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[modifier]Exemple
This section is incomplete Reason: no example |
[modifier]Voir aussi
Construit un nouveau shared_ptr (fonction membre publique) |