我知道 ContiguousIterator 在文字规范意义上有概念,但我想知道它是否可以使用 C++20/C++17 Concepts TS 语法编写。
我的问题是,与RandomAccessIterator不同,ContiguousIterator不仅需要一些喜欢it+123
工作的操作,还取决于该操作的运行时结果。
我知道 ContiguousIterator 在文字规范意义上有概念,但我想知道它是否可以使用 C++20/C++17 Concepts TS 语法编写。
我的问题是,与RandomAccessIterator不同,ContiguousIterator不仅需要一些喜欢it+123
工作的操作,还取决于该操作的运行时结果。
不,你不能,如果没有特征类或其他帮助器,类型选择加入是连续的。
您的问题目前无法解决。委员会正在考虑如何推断连续内存访问。问题在于 iterator_category 不是特征(尽管它位于 iterator_traits 中);它是一种临时类型。它不能在不破坏现有代码的情况下进行子类型化。(初学者的错误,嗯?)委员会已经认识到了这个烂摊子。这个最近的讨论告诉了所有 ->如何从迭代器中推断出连续的内存