g++ で C++11, 14, 17 を利用する方法。
なんかオプションが必要みたいです。
なおここで述べるのは
gcc
g++
の2つです
C++11の機能を有効にする
GCC 4.3から4.6までは、-std=c++0xオプションを使用する。
GNU拡張を有効にする-std=gnu++0xオプションもある。
GCC 4.7以降は、-std=c++11オプションを使用する(旧オプションは非推奨)。
GNU拡張を有効にする-std=gnu++11オプションもある。
C++14の機能を有効にする
GCC 4.8から4.9までは、-std=c++1yオプションを使用する。
GNU拡張を有効にする-std=gnu++1yオプションもある。
GCC 5.1以降は、-std=c++14オプションを使用する(旧オプションは非推奨)。
GNU拡張を有効にする-std=gnu++14オプションもある。
GCC 6.1以降は、C++14がデフォルトとなる。デフォルトバージョンのコンパイルオプションは-std=gnu++14
C++17の機能を有効にする
GCC 6.1以降は、-std=c++1zオプションを使用する。
GNU拡張を有効にする-std=gnu++1zオプションもある。
結局のところ
g++ -std=c++1z sample.cpp
でOKなはず。多分。