![](/img/trans.png)
[英]Is it possible to set g++ to follow C++11 ISO (-std=c++11) through #define?
[英]how to define -std=c++11 as default in g++
我在C ++程序中使用了一些我需要在g ++中設置-std=c++11
選項的功能
是否可以將此選項設置為默認選項,並且不必在我每次編譯時都使用此選項?
或如何在Makefile中進行設置。
是的,您通常在Makefile中進行設置:
CXXFLAGS=-std=c++11
您還可以通過autoconf
, cmake
或您可能部署的任何其他meta-buildtool,在上方的一層中檢測到合適的編譯器。
您當然會玩游戲,將g++11
定義為g++ -std=c++11
但此類設置不可移植。
g ++-6. *將默認為c ++ 14,因此在某些情況下此開關是隱式的。 但是所有用g ++-4.4。*打包的RHEL和CentOS可能要花很長時間才能消失。 這些甚至可能無法處理您當前的項目...
您可以按照以下步驟制作一個makefile(這是一個沒有變量的簡單版本)。
out: source.cpp
g++ -std=c++11 source.cpp -o out
使用您選擇的構建系統。 是make
, SCons
, CMake
, qmake
或其他名稱,並設置所需的選項。 應該花費全部30秒,您就完成了。
或者,默認情況下將編譯器升級到使用C ++ 11的版本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.