Cómo borrar tipo de iteradores de salida como std::insert_iterator
y std::back_insert_iterator
? ¿Es posible usar boost any_iterator
para hacerlo?iterador de salida de C++ borrado por tipo
#include <boost/range.hpp>
#include <boost/range/detail/any_iterator.hpp>
#include <vector>
typedef boost::range_detail::any_iterator<
int, boost::incrementable_traversal_tag, int &, std::ptrdiff_t > It;
int main()
{
std::vector<int> v;
It outIt(v.begin()); // compiles
It inserter(std::back_inserter(v)); // does not compile
return 0;
}
¿Qué quiere decir con "erase type"? –
@EitanT: debe buscar "borrado de tipo C++", pero para una definición breve "el proceso de convertir una amplia variedad de tipos con una interfaz común en un tipo con esa misma interfaz". Boost :: Cualquiera sería el ejemplo canónico. –
@JesseGood Aaa Sé lo que es eso, nunca supe que se llama "borrado de tipo". Doh! –