Я использую c++11
. Когда я использую оператор +=
для объединения строк или символов, он не работает, однако =
работает.
например, я использовал все нижеприведенные тестовые случаи независимо, т.е.
string s="abdddddd";
string ss="";
ss+=s[0];//working
ss+=s[0]+s[1]; //not working output: Ã
ss+="hi"+s[2]; //not working no output
ss+='d'+'c'; //not working output: З
ss+="hi"+"string"; //not working error: invalid operands of types ‘const char [3]’ and ‘const char [7]’ to binary ‘operator+’
string another="this";
ss+=another+'b'; //working
ss+="hi"+another;//working
ss+=("hi"+s[3]); //not working
ss=ss+"hi"+s[3]; //working
ss=ss+"hi"+"this"; //working
Также добавление скобок не работает. Итак, я хочу знать, почему он не работает со строками, он работает с добавлением целых чисел.