En C++ J'ai ce programme:C++, conversion non valide de 'char' à 'const char *'
#include <iostream>
using namespace std;
int main(){
string expression_input;
cout << "User Input: " << endl;
getline(cin, expression_input);
expression_input.insert(0, '('); //error happens here.
expression_input.append(')');
}
Je reçois l'erreur suivante:
prog.cpp:15: error: invalid conversion from ‘char’ to ‘const char*’
prog.cpp:15: error: initializing argument 2 of
‘std::basic_string<_CharT, _Traits, _Alloc>& std::basic_string<_CharT,
_Traits, _Alloc>::insert(typename _Alloc::rebind<_CharT>::other::size_type,
const _CharT*) [with _CharT = char, _Traits = std::char_traits<char>,
_Alloc = std::allocator<char>]’
Où suis-je suis en train de convertir de char
à const char*
? Est-ce que je ne peux pas insérer un caractère à la position 0 d'une chaîne?
-1: Vous pouvez très certainement utiliser 'insert' avec un' char'. Vous devez juste utiliser une surcharge différente. –
je suppose que j'ai omis de mentionner que cela ne fonctionne pas pour string :: insert fonction qui utilise la signature de son utilisation – minus