繁体   English   中英

为什么未指定std :: reverse_iterator :: operator []的返回类型?

[英]Why is the return type of std::reverse_iterator::operator[] unspecified?

我想知道,为什么,在C ++中, std::reverse_iterator::operator[]的返回类型未指定。 不应该是std::reverse_iterator::reference吗?

这实际上是一种多余的放松; LWG 448LWG 299N3066 )开始,它们包含在C ++ 11中,迭代器的operator[]返回类型应该可以转换为reference 不幸的是,在改变了对operator[]的返回类型的要求的问题之前解决了引入这种不足规范( 386 )的原始LWG问题。

由于迭代器的operator[]的返回类型现在被强制转换为reference ,因此reverse_iterator::operator[]的返回类型显然只是reference - 它在libc ++和libstdc ++中都是如此。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM