¿Cuál es el trato con setw ()?

ecientemente me mordió el hecho de queios_base::width y / o elsetw manipulador tiene que serreset con cada elemento escrito en la transmisión.

Es decir, debes hacer esto:

while(whatever)
{
    mystream << std::setw(2) << myval;
}

En vez de esto

mystream.width(2);
while(whatever)
{
    mystream << myval;
}

Está bien

¿Pero alguien sabe por qué se tomó esta decisión de diseño? ¿Hay alguna razón que me falta, o es solo un rincón oscuro del estándar?

Otros modificadores de formato de flujo (como se menciona en la pregunta SO vinculada) son 'fijos', mientras quesetw no es

Respuestas a la pregunta(2)

Su respuesta a la pregunta