ContiguousIterator有什么实际用途吗?

Dev*_*ull 3 c++ iterator c++17

C++ 17介绍ContiguousIterator,但没有相应的contiguous_iterator_tag.

如果无法通过检查/执行,是否有任何实际用途?ContiguousIteratorstd::iterator_traits

这个问题不同于连续的迭代器检测,因为它不是"为什么它没有标签",而是"如果它没有标签就可以使用它".

Nic*_*las 5

C++ 17中的命名要求首先是符号.如果它们强加了可检测的要求,它们只与语言中的可检测事物相关联.并且ContiguousIterator不会对实现它们的类型强加可检测的要求.

所以ContiguousIterator允许你做的最实用的事情是在你的文档中写下"你必须传递ContiguousIterator",并理解读者将追踪该术语的具体细节.但是,不,C++ 17中定义的ContiguousIterator不允许您编写任何可以静态检测不连续的ContiguousIterators和RandomAccessIterator之间差异的内容.