此时,boost :: optional<>支持引用,但std :: experimental :: optional&在我的系统上从libstdc没有.这是否反映了什么可能使其成为标准?
我知道可选的提案作者将可选参考文献作为单独的提案分离,以便主要的可选提案更有可能被接受.有关可选参考文献的提案被拒绝还是停止工作?
解决方法
Is this reflective of what might make it into the standard?
从工作草案([20.5.2/1]):
A program that necessitates the instantiation of templateoptionalfor a reference type […]is ill-formed.
我想这回答你的问题.
请注意,您仍然可以通过使用std :: reference_wrapper来处理它,如@bobah在评论中所提到的.