Tengo un contenedor STL arbitrario C, que contiene elementos de un tipo arbitrario T. Quiero crear un std :: vector que tenga una copia de todos los elementos. ¿Cuál es la forma más limpia de hacer esto?Plantillas de función para contenedores STL arbitrarios que contienen tipos arbitrarios
template <typename C>
void myfunction(C container){
/*Derive the type T of elements within the container*/
std::vector<T> mystack;
/* Iterate over container and push_back() the elements into mystack*/
}
Pensé que podría topar con esto para C++ 11. ¿La nueva palabra clave "auto" funcionaría aquí? No he tenido la oportunidad de jugar con eso mucho. –
@ChadBrewbaker: No. 'decltype' funcionaría, pero eso no es más simple que' typename C :: value_type'. – kennytm