Como usar os recursos do C++ 11 na versão mais recente do g++

Como usar os recursos do C++ 11 na versão mais recente do g++

Novato aqui. Acabei de receber um erro ao executar no terminal um programa C++ que escrevi: error: ‘stoi’ is not a member of ‘std’. Eles me disseram que o compilador é muito antigo.

Estou usando o Ubuntu 14.04.

Minha versão g++ é 4.8.4.

Como faço para atualizar?

Responder1

Você não precisa atualizar. Especifique a versão dos padrões para g++. Por exemplo, para compilarum programa de exemplo de cppreference.com:

$ g++ --version
g++ (Ubuntu 4.8.5-2ubuntu1~14.04.1) 4.8.5
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$ g++ --std=c++11 -o test test.cpp
$ ./test
std::stoi("45") is 45
std::stoi("3.14159") is 3
std::stoi("31337 with words") is 31337

informação relacionada