Escribo un iterador para un contenedor que se usa en lugar de un contenedor STL. Actualmente, el contenedor STL se utiliza en muchos lugares con el c++11 foreach syntax, por ejemplo: for(auto &x: C)
. Hemos necesario para actualizar el código para utilizar una clase personalizada que envuelve el contenedor STL:C++ 11 sintaxis foreach e iterador personalizado
template< typename Type>
class SomeSortedContainer{
std::vector<typename Type> m_data; //we wish to iterate over this
//container implementation code
};
class SomeSortedContainerIterator{
//iterator code
};
¿Cómo llego de automóviles para utilizar el iterador correcto para el contenedor personalizado por lo que el código es capaz de ser llamado en el siguiente ¿manera ?:
SomeSortedContainer C;
for(auto &x : C){
//do something with x...
}
En general, ¿qué se necesita para garantizar que el auto utiliza el iterador correcto para una clase?
Si está utilizando Visual Studio, puede colocar el cursor sobre el nombre de la variable para ver su tipo. IIRC, muestra el tipo real, no 'auto'. –