Los objetos string
proporcionan a los
desarrolladores un gran número de ventajas sobre sus
contrapartidas en C. La mayoria de veces, la clase
string
hacen a las cadenas con punteros a
caracteres innecesarios. Esto elimina por completo una clase de
defectos de software que radican en el uso de punteros no
inicializados o con valores incorrectos.
FIXME:
Los string
de C++, de manera transparente
y dinámica, hacen crecer el espacio de alamcenamiento para
acomodar los cambios de tamaño de los datos de la cadena. Cuando
los datos en n string
crece por encima de
los límites de la memoria asignada inicialmente para ello, el
objeto string
hará las llamadas para la
gestión de la memoria para obtener el espacio y retornar el
espacio al montón. La gestión consistente de la memoria
previente lagunas de memoria y tiene el potencial de ser mucho
más eficiente que un "hágalo usted mismo".
Las funciones de la clase string
proporcionan un sencillo y comprensivo conjunto de herramientas
para crear, modificar y buscar en cadenas. Las comparaciones
entre string
siempre son sensibles a
mayúsculas/minúsculas, pero usted puede solucionar el problema
copiando los datos a una cadena estilo C acabada en nulo y
usando funciones no sensibles a mayúsculas/minúsculas,
convirtiendo temporalmente los datos contenidos a mayúsculas o
minúsculas, o creando una clase string
sensible que sobreescribe los rasgos de carácter usados para
crear un objeto basic_string