A norma C ++ 03 (ISO-IEC 14882-2003) diz na cláusula 20.4.5, parágrafo 3:
[...] [ Nota: [...] auto_ptr não atende aos requisitos de CopyConstructible e Assignable para elementos de contêiner da Biblioteca Padrão e, assim, instanciar um contêiner da Biblioteca Padrão com um auto_ptr resulta em comportamento indefinido. - nota final ]
A norma C ++ 11 (ISO-IEC 14882-2011) diz no apêndice D.10.1, parágrafo 3:
[...]
Nota: [...] Instâncias de auto_ptr atender os requisitos da MoveConstructible e MoveAssignable, mas não atender aos requisitos de CopyConstructible e CopyAssignable. - nota final]
A norma C ++ 14 (ISO-IEC 14882-2014) diz no apêndice C.4.2 Anexo D: recursos de compatibilidade:
Alteração : Os modelos de classe auto_ptr, unary_function e binary_function, os modelos de função random_shuffle e os modelos de função (e seus tipos de retorno) ptr_fun, mem_fun, mem_fun_ref, bind1st e bind2nd não estão definidos.
Justificativa : Substituída por novos recursos.
Efeito no recurso original : O código C ++ 2014 válido que usa esses modelos de classe e modelos de função pode falhar na compilação neste Padrão Internacional.