Jon*_*ely 19
更新(2016年10月): std::optional不在最终的C++ 14标准中,因此它永远不可用-std=c++1y.相反,GCC 4.9包括std::experimental::optional可用的-std=c++1y.
GCC 7将包括std::optional与-std=c++1z即C++ 17.
原始答案(2013年6月):
它目前尚未实现,请参阅http://gcc.gnu.org/ml/libstdc++/2013-06/msg00032.html了解GCC主干中C++ 14功能的状态.
当它实施时,取决于有人志愿做什么工作,所以无法预测.
我希望它能在GCC 4.9上完成,它应该在C++ 14标准之前不久发布,但是没有任何保证.它不太可能被添加到GCC 4.8,因为它已经发布,并且与GCC 4.9(即GCC subversion主干)不同,__cplusplus宏具有相同的值-std=c++11,-std=c++1y因此对于GCC 4.8,没有办法-std=c++1y仅选择性地启用功能.
根据他们的libstdc++ 状态页面, GCC 7.1 是第一个std::optional没有隐藏的版本std::experimental,它支持__has_include(<optional>)功能测试。特性测试__cpp_lib_optional >= 201603是在 GCC 7.3 中添加的。
| 归档时间: |
|
| 查看次数: |
6298 次 |
| 最近记录: |