- Para el punto final de la cadena: Supongamos que la cadena de caracteres internos tiene un final nulo. Luego, al desreferenciar el iterador para ver si están '\ 0' para determinar la siguiente posición, es el punto final. Pero para otra cadena no terminada en nulo, es imposible conocer dicha información.
- Para el punto de inicio de la cadena: No hay forma de hacerlo.
El std :: string :: iterator predeterminado es solo un iterador aleatorio de dos direcciones, no sabe nada sobre el contenedor.
Pero si está trabajando en la plataforma Visual C++, tal vez usted puede utilizar alguna manera la piratería como seguir para obtener el control de su contenedor, pero es muy peligroso:
// it is the passed in string::iterator parameter.
if (it._Has_container()) {
string* strRef = (string*)it._Mycont;
}
Sí que definitivamente necesita iteradores que apunta a al final o al comienzo para comparar su iterador actual, algo que podría determinarse cuando defina la cadena? – DogDog