¿Cómo lidiar con la última coma, al hacer una cadena separada por comas? [duplicar

Posibles duplicados:
No imprima espacio después del último número
Imprimir listas con comas C ++

#include <vector>
#include <iostream>
#include <sstream>
#include <boost/foreach.hpp>
using namespace std;

int main()
{
   vector<int> VecInts;

   VecInts.push_back(1);
   VecInts.push_back(2);
   VecInts.push_back(3);
   VecInts.push_back(4);
   VecInts.push_back(5);

   stringstream ss;
   BOOST_FOREACH(int i, VecInts)
   {
      ss << i << ",";
   }

   cout << ss.str();

   return 0;
}

Esto imprime:1,2,3,4,5, Sin embargo, quiero:1,2,3,4,5

¿Cómo puedo lograr eso en unaelegant ¿camino

Veo que hay algo de confusión sobre lo que quiero decir con "elegante": por ejemplo. sin ralentizar "si-cláusula" en mi bucle. ¡Imagina 100.000 entradas en el vector! Si eso es todo lo que tiene para ofrecer, prefiero eliminar la última coma después de haber pasado por el bucle.

Respuestas a la pregunta(10)

Su respuesta a la pregunta