He estado usando la nueva auto
palabra clave disponible en el estándar C ++ 11 para tipos de plantillas complicados, para lo cual creo que fue diseñada. Pero también lo estoy usando para cosas como:
auto foo = std::make_shared<Foo>();
Y más escépticamente por:
auto foo = bla(); // where bla() return a shared_ptr<Foo>
No he visto mucha discusión sobre este tema. Parece que auto
podría usarse en exceso, ya que un tipo es a menudo una forma de documentación y controles de sanidad. ¿Dónde trazas la línea de uso auto
y cuáles son los casos de uso recomendados para esta nueva característica?
Para aclarar: no estoy pidiendo una opinión filosófica; Solicito el uso previsto de esta palabra clave por parte del comité estándar, posiblemente con comentarios sobre cómo se realiza ese uso previsto en la práctica.
Nota al margen: esta pregunta se trasladó a SE.Programmers y luego a Stack Overflow. La discusión sobre esto se puede encontrar en esta meta pregunta .
auto
palabra clave, entonces sabes cómo se supone que debe usarse. Eso es lo que pregunto, como alguien que es nuevo en esta función, ¿cómo se supone que debo usarla?
var
(es decir, una vez que la gente superó la idea de que no era una escritura dinámica después de todo). Si lo desea, puede comenzar con esta pregunta y pasar por las preguntas relacionadas.
auto foo = bla();
"malo" es claramente una opinión, no un hecho, lo que hace esta pregunta y responde a una discusión, lo que la hace relevante para los Programadores SE, que es exactamente lo que indican los votos cerrados. / encogimiento de hombros