web-dev-qa-db-fra.com

Comment utiliser les fonctionnalités de C ++ 11 dans la dernière version de g ++

Débutant ici. Je viens de recevoir une erreur lors de l’exécution par le terminal d’un programme C++, j’ai écrit: error: ‘stoi’ is not a member of ‘std’. Ils m'ont dit que le compilateur est trop vieux.

J'utilise Ubuntu 14.04.

Ma version g ++ est la 4.8.4.

Comment puis-je mettre à jour?

6
Pigna

Vous n'avez pas besoin de mettre à jour. Spécifiez la version des normes sur g++. Par exemple, pour compiler n exemple de programme 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
4
muru