o seguinte código gera erro
std::string xyz="whatever";
int x=1;
xyz+=std::to_string(x);
//this is supposed to turn xyz into whatever1 from whatever
Por que estou usando essa abordagem? Porque instruções preparadas não estão funcionando com a versão do mysql no meu Ubuntu (há um bug com esta versão do mysql), e eu tentei e segui tudo para atualizar o mysql, mas ai!
Então, onde eu deveria fazer isso
sql::preparedStatement* pstm=con->prepare_Statement("select x from y where a=?");
pstm->setString(1,"xyz");
Estou recebendo uma falha de segmentação, erro de dump principal acima. É um erro comum com a versão do mySQL que tenho em UBUNTU. Depois de tentar tudo o que pude para atualizar o mysql, decidi não usar instruções preparadas. Em vez disso, decidi fazer perguntas como
std::string query="select x from y where a=";
int x=5;
query+=std::to_string(x);
E KUDOS! A versão g ++ não suporta os recursos do C ++ 11 e, portanto, to_string não faz parte do std. Eu tentei os seguintes comandos
sudo apt-get update
sudo apt-get upgrade g++
Sem sorte ainda. Qualquer ajuda será muito apreciada
PS, por enquanto, estou usando essa abordagem para concatenar inteiros com string
sstream ss;
ss
Mas, eu não quero apenas continuar trocando de jeito, porque eu não posso atualizar um recurso sangrento do Ubuntu, ninguém quer isso. Certo?