web-dev-qa-db-ja.com

g ++の最新バージョンでC ++ 11機能を使用する方法

ここの初心者。作成したC++プログラムerror: ‘stoi’ is not a member of ‘std’のターミナルで実行中にエラーが発生しました。彼らはコンパイラが古すぎると私に言った。

Ubuntu 14.04を使用しています。

私のg ++​​バージョンは4.8.4です。

アップグレード方法は?

6
Pigna

アップグレードする必要はありません。 g++に標準バージョンを指定します。たとえば、 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