1

我有問題,嘗試編譯這段代碼:編譯器不能編譯以下行(C++)

int *array_aleatorio = new int[8]{0, 1, 2, 3, 4, 5, 6, 7}; 

這顯示了錯誤:

main.cpp:315:38: error: expected ';' at end of declaration
int *array_aleatorio = new int[8]{0, 1, 2, 3, 4, 5, 6, 7};

我的一位隊友告訴我這可能是因爲我沒有使用正確的編譯器。他使用C++11,它的工作原理。我試圖安裝它沒有任何成功。

我使用OSX 10.6.8Netbeans 7.3

我使用clang++enter image description here

我已通過添加-std=c++11 -stdlib=libc++ -Weverything線到項目的編譯性能試過這種this解決方案,但它不工作: enter image description here

這是顯示出來,當我嘗試執行它的錯誤通過添加上面的行。

clang++ -std=c++11 -stdlib=libc++ -Weverything -c -g -std=c++11
-stdlib=libc++ -Weverything -MMD -MP -MF build/Debug/GNU-MacOSX/main.o.d -o build/Debug/GNU-MacOSX/main.o
main.cpp clang: warning: argument unused during compilation:
'-std=c++11' clang: warning: argument unused during compilation:
'-stdlib=libc++' warning: unknown warning option '-Weverything'
[-Wunknown-warning-option] warning: unknown warning option
'-Weverything' [-Wunknown-warning-option] error: invalid value 'c++11'
in '-std=c++11'

有人能告訴我如何在OSX中安裝C++ 11嗎?提前致謝。

+1

鏘支持C++ 11就好了。你有什麼版本? –

+1

'int array_aleatorio [] = {0,1,2,3,4,5,6,7};' – fvu

+0

我同意。 「新」在這裏看起來毫無意義。 – chris

回答

5

您的Xcode是方式過時。 Xcode中3.2.6發佈於2011 包括:

Apple clang version 1.7 (tags/Apple/clang-77) (based on LLVM 2.9svn) 

基於發佈日期,這並不令人驚訝的是它並沒有C++ 11的支持。

你想要得到的Xcode 4.6,其中包括:

Apple LLVM version 4.2 (clang-425.0.28) (based on LLVM 3.2svn) 

您可能需要更新您的操作系統,太 - 10.6.8是一個老幾年了。

+0

我不能更新Xcode,因爲正如你所說,它需要一個更新的OSX版本,由於多種原因,這是不可能的。 –

+1

不可能嗎?爲什麼?無論如何,如果你真的陷入困境,你可以去獲取叮叮聲源並建立自己的聲音。 –

+0

由於某些高清redimensions,如果我想更新OSX我必須通過乾淨安裝而不是正常更新OSX來完成。爲此,我需要備份所有數據,而現在我沒有時間這樣做。我會盡力去做你正在說的。 –

1

雪豹叮噹的最後一個受支持的版本(與xcode一起提供)不是C++ 11兼容的,但是你可以安裝macports(http://www.macports.org/install.php)並且在控制檯的幫助下你可以安裝更新版本的clang ,「sudo port install clang-3.2」等。

在其中安裝鐺該文件夾可以與發現「whereis鐺-3.2