#57#20 Afortunadamente sí, seguirá sin haber garbage collector.
#54 y #56: por lo que tengo entendido no es más que dejar que el compilador detecte el tipo en tiempo de compilación, con lo que no hay ninguna penalización en tiempo de ejecución. Por ejemplo, si escribes algo así:
for (auto it = lista.begin (); it != lista.end (); ++it)
el compilador puede deducir el tipo de la variable it a partir del valor de retorno de la función lista.begin (), con lo que el programador se ahorra tener que ponerlo.
#58#57, ya hay que ser un poco vago para no querer especificar un int, size_t, etc... y querer escribir de igual modo auto. Que más dará especificar el tipo de variable en vez de darle trabajo extra al compilador.
PD: Si, yo también me alegro de la ausencia del recolector de basura en C++.
#60#58 A lo que #57 se refiere no es a size_t o int's precisamente... en C++ con plantillas te puedes encontrar mostrencos como:
for (std::multimap<std::set<int>, std::vector< typename mi_clase::obj_t> >::const_iterator it = ...)
que quedarían:
for (auto it = ...)
Y eso sin contar con que en realidad si es una plantilla genérica, puede que ni sepas los tipos de los que estás hablando, así que "auto" es de las cosas más útiles que han podido crear!
#54 y #56: por lo que tengo entendido no es más que dejar que el compilador detecte el tipo en tiempo de compilación, con lo que no hay ninguna penalización en tiempo de ejecución. Por ejemplo, si escribes algo así:
for (auto it = lista.begin (); it != lista.end (); ++it)
el compilador puede deducir el tipo de la variable it a partir del valor de retorno de la función lista.begin (), con lo que el programador se ahorra tener que ponerlo.