Acabo de compilar parte de mi propio código con la -std=c++0xbandera en GCC, ya que quiero seguir vagamente con lo que están haciendo todos los jóvenes (siempre que se mantengan fuera de mi césped), y terminé con un montón de advertencias. sobre auto_ptrser desaprobado. Por supuesto, sabía que auto_ptrestaba en desuso en C ++ 0x, pero ...
¿No es la desaprobación una pérdida de tiempo y esfuerzo? Razones para no despreciar (con auto_ptr como ejemplo):
Hay un océano de código por ahí que aún necesita ser soportado, producir millones de advertencias solo tentará a las personas a desactivarlas.
auto_ptres un poco molesto, pero en realidad hace lo que dice en la lata.si realmente queremos desaprobar las cosas, las nomino
printf(). Pero solo imagine los chillidos que seguirían.auto_ptrno tiene muchos amigos, pero al menos en mi código C ++ se usa más queprintf, lo que no se usa en absoluto.el comité tiene un mal historial de hacer esto bien: desaprobaron la estática en el ámbito del espacio de nombres, y ahora parece haber quedado desaprobada. No me sorprendería si
auto_ptrhiciera un regreso similarPor último, independientemente de lo que diga el comité, los implementadores del compilador los ignoran: simplemente no pueden arriesgarse a romper el código de sus clientes, todo lo que pueden hacer es emitir advertencias irritantes.
Entonces, mi pregunta: ¿considera la desaprobación (de cualquier cosa, no solo auto_ptrs, y no solo en C ++) una buena idea, y si es así, ¿por qué?
unique_ptry sé más feliz.
auto_ptrcomo ejemplo.