Vengo del mundo de Java y estoy construyendo un pequeño programa de C++ en este momento. Tengo un objeto que hace algún trabajo y luego devuelve el resultado del trabajo como una lista.Interfaz/Superclase para Colecciones/Contenedores en C++
Ahora, un día más tarde he cambiado el comportamiento del objeto para guardar los resultados en un conjunto para evitar duplicados en el contenedor. Pero no puedo simplemente devolver el conjunto porque utilicé una lista para la interfaz la primera vez. ¿Existe una interfaz de contenedor común que pueda usar para especificar la interfaz de mi objeto y olvidar el tipo de contenedor que uso internamente?
Por el momento estoy creando un conjunto de añadir todos los valores y luego crear una lista del conjunto:
return std::list<foo>(this->mySet.begin(), this->mySet.end())
parece un poco extraño.
Si le devuelven const_iterators. Luego haga los métodos const begin() y end(). –
Sí - Editado eso – Dario