我正在研究使用一些c ++ 11功能的算法代码,但是我的linux系统只有gcc4.4.7而且我没有权限更新这个版本。我被告知通过运行某种脚本可以解决这个问题,这意味着使用gcc4.4.7仍然可以编译具有c ++ 11功能的c ++代码。
我的问题是,目前我在linux系统中只有gcc4.4.7,所以如果有一个解决方案可以帮助我编译一个使用c ++ 11功能的算法代码,我会徘徊,如关键字" nullptr& #34;" constexpr"等等,只使用gcc4.4.7。
顺便说一下,我已经知道gcc4.7及以上版本可以支持c ++ 11。
非常感谢!
答案 0 :(得分:1)
如果编译器不支持语言功能,则不会运行魔术“脚本”来改变编译器对代码的理解。正如所见,gcc 4.4中没有一些核心C ++ 11特性。
那你能做什么?
询问您的系统管理员是否允许您安装或要求他安装它。
您可以在帐户中安装最新的gcc 本地。与传统安装相比,这需要的权限更少。
或者,您可以从源代码在本地目录中安装gcc 。这应该是100%可行的,没有任何特殊许可(除了在您的家庭目录上写)
或者,如果您正在学习的算法没有多个来源且不使用除boost之外的任何库,则可以在线编译并运行。你可以搜索自己,有很多C ++在线编译器。 here非常棒,因为它支持多个源文件,增强库甚至未来版本的gcc和clang的开发版本。