Проблема в том, что вы пытаетесь "добавить" две буквенные строки. Строковые литералы не относятся к типу std :: string в C ++, они похожи на неизменяемые массивы символов. Добавление двух вместе не имеет смысла, как если бы вы добавили два указателя вместе.
Однако вы можете сделать это:
std::string("foo") + "bar"
Это потому, что в C ++ определены методы для конкатенации строк C ++ со строками C.