Как мне обновить мои функции g ++, C ++ 11 не работают [дубликат]

На этот вопрос уже есть ответ здесь:

следующий код генерирует ошибку

std::string xyz="whatever";
int x=1;
xyz+=std::to_string(x);
//this is supposed to turn xyz into whatever1 from whatever

Почему я использую этот подход? Потому что подготовленные операторы не работают с версией mysql на моем ubuntu (в этой версии mysql есть ошибка), и я пробовал и следил за всем, чтобы обновить mysql, но, увы! Итак, там, где я должен был это сделать

sql::preparedStatement* pstm=con->prepare_Statement("select x from y where a=?");
pstm->setString(1,"xyz");

, я получаю ошибку сегментации, ошибку дампа ядра, описанную выше. Это обычная ошибка с версией mySQL, которая есть у меня в UBUNTU.Попробовав все, что мог, для обновления mysql, я решил вообще не использовать подготовленные операторы. Вместо этого я решил задать такие вопросы, как

std::string query="select x from y where a=";
int x=5;
query+=std::to_string(x);

And KUDOS! Версия g ++ не поддерживает функции C ++ 11, поэтому to_string не является частью std. Я пробовал следующие команды

sudo apt-get update
sudo apt-get upgrade g++

Пока не повезло. Любая помощь будет принята с благодарностью

PS, в настоящее время я использую этот подход для объединения целых чисел со строкой

sstream ss; {{1 }} ss

Но я не хочу постоянно менять пути только потому, что я не могу обновить чертову функцию Ubuntu, это никому не нужно. Верно?

1
задан 7 March 2015 в 19:22

1 ответ

g ++ действительно поддерживает C++ 11, но это экспериментально, следовательно необходимо включить его с опцией -std=gnu++11. Вы не должны обновлять g ++, Вы не можете, потому что Вы уже выполняете последнюю версию.

, Таким образом, Вы скомпилируете использование команды как

g++ -std=gnu++11 ./source_file.cpp

, можно также попробовать clang компилятор, поскольку это имеет лучший C++ 11 поддержки, чем g ++. Для установки его работайте

sudo apt-get install clang-3.5

, Действительно читают Состояние Экспериментального C++ 11 Поддержки в GCC 4.8 и Поддержка C++ в Лязге .

0
ответ дан 7 March 2015 в 19:22

Другие вопросы по тегам:

Похожие вопросы: