我很高兴发现GCC 4.6支持range-based for loop。我在xvidvideo.ru上发现了MinGW 4.6的实验版本,这是一个众所周知,可靠的网站吗?我还有什么其他选择(除了从源代码编译自己)?
答案 0 :(得分:10)
我想在Windows 7下使用最新的Code::Blocks
试用GCC 4.7。
以下是我为自己做的事情,YMMV:
我在以下位置下载了最新的Equation GCC文件:
ftp://ftp.equation.com/gcc/并将其安装在我本地计算机上的C:\gcc\
目录下。安装程序对路径环境变量进行必要的更改。注销然后再启动它们。
我在http://forums.codeblocks.org/index.php?board=20.0下载了Code::Blocks
最新的每晚版本
并按照设置说明进行操作。
按照设置说明(包括所需的DLL文件),第一次启动C :: B后;
我为“编译器自动检测”窗口选择了“GNU GCC编译器”和“设置为默认值”。
在'设置>下编译器...>编译器设置选项卡: 我勾选了“让g ++遵循即将推出的C ++ 0x ISO C ++语言标准[-std = c ++ 0x]”复选框。
在'设置>下编译器...>工具链可执行文件的选项卡:
我将“编译器的安装目录”输入字段更改为C:\gcc\bin\
。
我更改了物理上位于C:\gcc\bin\
目录
i686-pc-mingw32-gcc.exe -=to=- mingw32-gcc.exe
i686-pc-mingw32-g++.exe -=to=- mingw32-g++.exe
make.exe -=to=- mingw32-make.exe
以匹配Code::Blocks
中列出的名称要求。您只需浏览即可设置正确的文件(我个人更喜欢重命名以匹配C :: B的条目)。
如果一切正常,您应该能够创建此程序:
#include <iostream>
#include <vector>
int main() {
using namespace std;
vector<int> my_vec = { 1, 2, 3, 4, 5 };
for (auto x : my_vec) {
cout << x << endl;
}
}
并在Code :: Blocks with F9下运行它。
感谢大家为我们带来这个伟大的新语言所做的所有出色工作。快乐的C ++ 0x计算!
Bud Alverson (对不起这篇文章的基本性质):)答案 1 :(得分:4)
我对您链接的网站并不熟悉俄语。我发现的唯一另一个提供GCC构建的当前快照的地方是Equation Solution。我从那里下载了gcc4.5.1,它对我来说效果很好。但是,我还没有尝试过4.6.x版本。有传言说gcc 4.6.x比它的前辈慢。
如果您决定尝试,请报告您所看到的结果。我很好奇他们在4.6.x系列中做了哪些改进。