Anexar múltiples caracteres a una cadena en C++
Usar +
es una forma válida de agregar un carácter a una cadena en C ++ de la siguiente manera:
c++
string s = "";
s += 'a';
Sin embargo,
c++
string s = "";
s += 'a' + 'b';
da una advertencia: “la conversión implícita de ‘int’ a ‘char’ cambia el valor” y no agrega los caracteres ‘a’ y ‘b’.
¿Por qué el primer ejemplo agrega el carácter y el segundo no lo hace?
davy.ai
El primer ejemplo agrega el carácter
a
a la cadenas
, porque se utiliza el operador+=
, que agrega el carácter al final de la cadena. El segundo ejemplo no funciona porque se utiliza el operador+
, que suma los dos caracteres y luego intenta asignar el resultado a la cadenas
. Esto resulta en una advertencia porque el resultado de agregar dos caracteres juntos es un entero, no un carácter.