code-prettify

5.21.2013

[C++11] 在 GCC 和 Visual Studio 中使用 C++11 的方法

就兩個我比較常用的編譯器來介紹一下使用C++11的方法~



可用功能


目前這兩個編譯器都還沒有完全支援 C++11 的所有功能
想知道自己所使用的編譯器支援那些功能可以參考:

C++0x/C++11 Support in GCC:
http://gcc.gnu.org/projects/cxx0x.html

C++11 Features in Visual Studio:
http://msdn.microsoft.com/en-us/library/vstudio/hh567368.aspx


目前來說, 是GCC的支援度比較高
不過有一點要注意: GCC在 Windows中的版本-- MinGW 並不完全支援所有同版本的GCC所支援的功能 (比如說一些新的 random方法 在MinGW 4.6 中是無法使用的)


在GCC的使用方法


如果是 GCC 4.6 或更早之版本, 編譯時使用參數 "-std=c++0x"
如果是 GCC 4.7 或更新的版本, 可以使用 "-std=c++0x" 或 "-std=c++11"

如:
gcc program.cpp -o my_program -std=c++0x


如果使用 Code::Blocks 作為 IDE的話 :

Setting > Compiler and debugger...



勾選 "Have g++ follow the coming C++0x ISO C++ language standard [-std=c++0x]" 


如果使用的 IDE 是 Dev-C++ : 還是趕快換一個 IDE 比較好



在 Visual Studio 的使用方法

不必特別調整, 預設就開啟了支援的功能



See Other C++11 Features

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.


2013 / 8 / 2 更新授權為 CC0 , 上方版權宣告不再具有效力
本作內容進入公眾領域, 您可以自由地使用

CC0
To the extent possible under law, NiwaSho Lin has waived all copyright and related or neighboring rights to this work.

2 comments :

  1. 如果使用的 IDE 是 Dev-C++ : 還是趕快換一個 IDE 比較好

    笑了XDDD

    ReplyDelete