Classe auto_ptr
Envolve um ponteiro inteligente o redor de um recurso que assegura que o recurso foi destruído automaticamente quando o controle deixa de um bloco.
A classe mais capaz de unique_ptr substitui auto_ptr. Para obter mais informações, consulte Classe unique_ptr.
Para obter mais informações sobre como throw() e a manipulação de exceções, consulte Especificações de exceção.
template<class Type>
class auto_ptr {
public:
typedef Type element_type;
explicit auto_ptr(Type *_Ptr = 0) throw();
auto_ptr(auto_ptr<Type>& _Right) throw();
template<class Other>
operator auto_ptr<Other>() throw();
template<class Other>
auto_ptr<Type>& operator=(auto_ptr<Other>& _Right) throw();
template<class Other>
auto_ptr(auto_ptr<Other>& _Right);
auto_ptr<Type>& operator=(auto_ptr<Type>& _Right);
~auto_ptr();
Type& operator*() const throw();
Type *operator->()const throw();
Type *get() const throw();
Type *release()throw();
void reset(Type *_Ptr = 0);
};
Parâmetros
_Right
auto_ptr da qual obter um recurso existente._Ptr
O ponteiro especificado para substituir o ponteiro armazenado.
Comentários
A classe do modelo descreve um ponteiro inteligente, chamado auto_ptr, a um objeto atribuído. O ponteiro deve ser zero ou designar um objeto atribuída por new. auto_ptr transfere a propriedade se o valor armazenado é atribuído a outro objeto. (Substitui o valor armazenado após uma transferência com um ponteiro nulo.) O destruidor para auto_ptr<Type> exclui o objeto atribuído. auto_ptr<Type> garante que um objeto foi excluído atribuído automaticamente quando o controle deixa de um bloco, mesmo com uma exceção gerada. Você não deve criar dois objetos de auto_ptr<Type> que possui o mesmo objeto.
Você pode passar um objeto de auto_ptr<Type> pelo valor como um argumento para uma chamada de função. auto_ptr não pode ser um elemento de qualquer contêiner padrão de biblioteca. Você não pode gerenciar de uma sequência de objetos de auto_ptr<Type> com um contêiner padrão da biblioteca do modelo.
Membros
Construtores
O construtor para objetos de tipo auto_ptr. |
Typedefs
O tipo é um sinônimo para o parâmetro Typedo modelo. |
Funções de membro
A função de membro retorna o ponteiro armazenado myptr. |
|
O membro substitui o ponteiro armazenado myptr com um ponteiro nulo e retorna o ponteiro armazenado anteriormente. |
|
A função de membro avalia a expressão delete myptr, mas somente se o valor do ponteiro myptr armazenado é alterado no resultado da chamada de função. Substitui o ponteiro armazenado com ptr. |
Operadores
Um operador de atribuição que transferir a propriedade de um objeto de auto_ptr para outro. |
|
O operador de remoção de referência para objetos de tipo auto_ptr. |
|
O operador para permitir acesso de membro. |
|
Conversões de um tipo de auto_ptr em outro tipo de auto_ptr. |
|
Conversões de auto_ptr a auto_ptr_ref. |
Requisitos
memória<deCabeçalho:>
Namespace: std
Consulte também
Referência
Segurança de threads na Biblioteca Padrão C++