Теперь я не понимаю, почему компилятор говорит, что я конвертирую из char в const char *.
Причина, по которой вы получаете ошибку компиляции, заключается в том, что нет соответствующей перегрузки для набора аргументов, передаваемых методу. Компилятор пытается найти наиболее близкое соответствие, которое в вашем случае char
и const char*
, а затем сообщает об этой ошибке.
Пожалуйста, помогите мне.
Существует 8 перегрузок для std :: string :: insert и 6 перегрузок для std :: string :: append , У вас есть много разных вариантов, таких как:
expression_input.insert(0, "(");
expression_input.append(")");
или
expression_input.insert(expression_input.begin(), '(');
expression_input.append(")");
или даже
expression_input.insert(0, 1, '(');
expression_input.append(")");
Есть много возможностей, просто выберите тот, который вы считаете наиболее читабельным или подходящим для вашей ситуации.