C++ Autoincremento de nombre

Función para incrementar un nombre de algo añadiendole números. Útil cuando es necesario un nombre único.

void IncName( StringC& strName, int nCount, int nMaxChars )
{
int nCountDigit = 1;
while( (nCount / pow(10.0,nCountDigit)) >= 1.0 )
{
nCountDigit++;
}

StringC strFormat;
strFormat.Format( L"%%s_%d", nCount );

strName.Format( strFormat, (const wchar_t*)strName.Mid( 0, nMaxChars-nCountDigit-1 ) );
}
¡Se puede mejorar haciendo uso de las funciones de la siguiente entrada!

Esta función fue usada en SOA_SetOfAngles para ponerle nombre a la lista de puntos.
Una versión fue usada en DXF2LandXml para ponerle nombre a los puntos repetidos.

No hay comentarios: